站长资讯网
最全最丰富的资讯网站

ASP实现从远程服务器上接收XML数据

request.asp页面
<%
dim Https
set Https=server.createobject(“MSXML2.XMLHTTP”)
‘定义一个XMLHTTP对像
Https.open “POST”,”http://127.0.0.1/response.asp”,false
Https.send “<?xml version=””1.0″”?><misc_command version=””1.0″”><command_name>echo</command_name><command_data_block><sid>123456</sid><service_id>987654</service_id><sp_id>11111</sp_id><sp_password>www.QQView.com</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页面<%
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).childnodes(0).text
response.write the_text

set blogchild = nothing
set xml = nothing
%>或者<%
Set objXML = Server.CreateObject (“msxml2.DOMDocument”)
objXML.async = False

‘装载POST数据
objXML.Load Request
if objXML.ParseError.errorCode <> 0 then
    Response.Write(“Error: ” & objXML.parseError.reason & “<br>”)
    Response.Write(“Code: 0x” & hex(objXML.parseError.errorCode) & “<br>”)
    Response.Write(“At Line: ” & objXML.parseError.line & “<br>”)
    Response.Write(“At pos: ” & objXML.parseError.linePos & “<br>”)
               
else
    set objRootElement = objXML.documentElement
    if not isObject(objRootElement) then
        Response.Write(“no file loaded”)
    else
        Response.Write(objRootElement.childnodes(1).childnodes(1).text)
    end if
    set objRootElement  = nothing
end if

set objXML  = nothing
%>

 

分享到: 更多

赞(0)
分享到: 更多 (0)

网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号