今天做了一下試驗,發現當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不能用在數據庫設計中! ! ! ! ! ! ! ! ! ! ! !
'十萬個注意! ! !