利用ASP發(fā)送和接收XML數(shù)據(jù)的處理方法

字號(hào):

因?yàn)橐鲆苿?dòng)夢(mèng)網(wǎng)WAP的一些接口,所以要用到這種方式,接下來(lái)會(huì)有ASP.net版本的,這個(gè)是ASP版本的,利用了MSXML2.XMLHTTP對(duì)像。
    request.asp
    dim Https
    set Https=server.createobject("MSXML2.XMLHTTP")
    '定義一個(gè)XMLHTTP對(duì)像
    Https.open "POST","http://127.0.0.1/testpost/response.asp",false
    Https.send "echo
    123456987654
    1111122222
"
    if Https.readystate=4 then
    response.write "提交成功"
    'readstate讀取狀態(tài)為4則成功,繼續(xù)后面的,不成功當(dāng)然就不用繼續(xù)處理了
    dim objstream
    set objstream = Server.CreateObject( "adodb.stream")
    '定義一個(gè)stream,因?yàn)樽x過(guò)來(lái)的直接拿出來(lái)是亂碼的,所以得處理一下
    objstream.Type = 1
    objstream.Mode =3
    objstream.Open
    objstream.Write Https.responseBody
    objstream.Position = 0
    objstream.Type = 2
    objstream.Charset = "GB2312"
    html = objstream.ReadText
    '轉(zhuǎn)好碼,就放到html里,好關(guān)閉這些對(duì)像
    objstream.Close
    set objstream = nothing
    set https=nothing
    end if
    response.write html
    response.asp
    '創(chuàng)建DOMDocument對(duì)象
    Set xml = Server.CreateObject ("msxml2.DOMDocument")
    xml.async = False
    '裝載POST數(shù)據(jù)
    xml.Load Request
    If xml.parseError.errorCode <> 0 Then
    response.write "不能正確接收數(shù)據(jù)" & "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里調(diào)用Servlet或Web Service都是很輕松的!