当前位置: 首页 > 图文教程 > 网络编程 > ASP > 利用ASP发送和接收XML数据的处理方法

ASP
如何善用Response.Buffer增进浏览速度?
利用 Meta Tag 来增加文件属性
要如何使用 ASP Error 组件?
Server.Execute和#include相异之处
ASP中文本文件与数据库文件的数据交换
如何用ASP建立图表
如何在ASP中通过ODBC调用Excel中的数据
不刷新页面改变下拉菜单内容
使用ASP重启服务器
用模板建立动态ASP页
如何用ASP将一大段文字中的HTML的标识去掉
让使用者可以看到你的ASP的原代码
用ASP实现在特定的时段或对特定访问者开放
在ASP中判断SQL语句是否执行成功
直接显示Monday等星期的ASP语句
LINE 的计数器源程序(附源代码)
使用asp+中的若干问题及解决方案
ASP实现多语言支持
Session对象在各浏览器中的有效范围
SQL Server如何解决加密问题?

利用ASP发送和接收XML数据的处理方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 138 ::
收藏到网摘: n/a

因为要做移动梦网WAP的一些接口,所以要用到这种方式,接下来会有ASP.net版本的,这个是ASP版本的,利用了MSXML2.XMLHTTP对像。

以下为引用的内容:

request.asp

dim Https
set Https=server.createobject("MSXML2.XMLHTTP")
'定义一个XMLHTTP对像
Https.open "POST","http://127.0.0.1/testpost/response.asp",false
Https.send "<?xml version=""1.0""?><misc_command version=""1.6""><command_name>echo</command_name>
<command_data_block><sid>123456</sid><service_id>987654</service_id>
<sp_id>11111</sp_id><sp_password>22222</sp_password></command_data_block></misc_command>"
if Https.readystate=4 then
 response.write "提交成功"
 'readstate读取状态为4则成功,继续后面的,不成功当然就不用继续处理了
 dim objstream
 set objstream = Server.CreateObject("adodb.stream")
 '定义一个stream,因为读过来的直接拿出来是乱码的,所以得处理一下
 objstream.Type = 1
 objstream.Mode =3
 objstream.Open
 objstream.Write Https.responseBody
 objstream.Position = 0
 objstream.Type = 2
 objstream.Charset = "GB2312"
 html = objstream.ReadText
 '转好码,就放到html里,好关闭这些对像
 objstream.Close
 set objstream = nothing
 set https=nothing
end if
response.write html

response.asp

'创建DOMDocument对象
Set xml = Server.CreateObject ("msxml2.DOMDocument")
xml.async = False

'装载POST数据
xml.Load Request
If xml.parseError.errorCode <> 0 Then
 response.write "不能正确接收数据" & "Description: " & xml.parseError.reason & "<br>Line: " & xml.parseError.Line
End If

set blogchild=xml.getElementsByTagName("misc_command")
'the_text=blogchild.item(0).childnodes(1).text
'the_text=blogchild.item(0).text
'for i=0 to blogchild.length-1
response.write the_text

利用这种方法,ASP里调用Servlet或Web Service都是很轻松的!