今天做了一下试验,发现当webservice返回的xml数据中使用了”name”关键字作为健值时,asp页面将无法读取整个xml文档,而出现以下错误:
无法显示 xml 页。
使用 xsl 样式表无法查看 xml 输入。请更正错误然后单击 刷新按钮,或以后重试。
--------------------------------------------------------------------------------
文本内容中发现无效字符。处理资源 'http://192.168.0.41/aspserver/server.asp' 时出错。第 56 行,位置: 11
<name>
//服务器端asp代码如下,webservice代码略,只要返回一个dataset的值即可
<%
set objhttp = server.createobject(msxml2.xmlhttp)
set xmldoc =server.createobject(msxml.domdocument)
strwebserviceurl = http://192.168.0.41/webservice1/service1.asmx/ds
'设置参数及其值
'strrequest = x=2&y=3
strrequest = tbname=123
objhttp.open post, strwebserviceurl, false
'设置这个content-type很重要
objhttp.setrequestheader content-type, application/x-www-form-urlencoded
objhttp.send(strrequest)
bok = xmldoc.load(objhttp.responsexml)
'看看状态值
if objhttp.status=200 then
xmlstr = xmldoc.xml
xmlstr = replace(xmlstr,<,<,1,-1,1)
xmlstr = replace(xmlstr,>,>,1,-1,1)
response.write xmlstr
else
response.write objhttp.status&<br>
response.write objhttp.statustext
end if
%>
'关键字name不能用在数据库设计中!!!!!!!!!!!!
'十万个注意!!!