1 xml serverxmlhttp asp-classic
我正在将ASP网页的两面写到ASP网页对话中,其中原始网页将信息推送到接收网页,接收网页然后处理它并发回响应.原始网页必须使用以下代码开始对话:
url = "www.receivingwebsite.com\asp\receivingwebpage.asp
information = "UserName=Colt&PassWord=Taylor&Data=100"
Set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
xmlhttp.Open "POST", url, false
xmlhttp.setRequestHeader "Content-Type", "text/xml"
xmlhttp.send information
Run Code Online (Sandbox Code Playgroud)
...然后以某种方式接收页面中的ASP代码必须能够看到发送的信息.我已经尝试了我能想到的一切.信息不在请求对象querystring
或表单数组中(因为内容类型是text/xml
),我尝试将整个请求对象domdocument
通过其load()
和/或loadxml()
方法传递给它.
无论我做什么,我都找不到信息,但我知道它正在被发送,因为当我更改内容类型时application/x-www-form-urlencoded
,我可以在request.form
数组中看到它.
那么当内容类型是text/xml
什么时,我的信息在哪里?
将content-type设置为"text/xml"时,您确实需要将信息作为XML字符串发送,而不是名称 - 值列表.
url = "www.receivingwebsite.com\asp\receivingwebpage.asp"
information = "<Send><UserName>Colt</UserName><PassWord>Taylor</PassWord><Data>100</Data></Send>"
Set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP")
xmlhttp.Open "POST", url, false
xmlhttp.setRequestHeader "Content-Type", "text/xml"
xmlhttp.send information
Run Code Online (Sandbox Code Playgroud)
然后,在接收ASP页面中,您将按如下方式捕获XML:
Dim xmlDoc
Dim userName
set xmlDoc=Server.CreateObject("Microsoft.XMLDOM")
xmlDoc.async="false"
xmlDoc.load(Request)
userName = xmlDoc.documentElement.selectSingleNode("UserName").firstChild.nodeValue
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8724 次 |
最近记录: |