1

私は、ASP Web ページから ASP Web ページへの会話の両側を書いています。この会話では、元の Web ページが情報を受信 Web ページにプッシュし、受信 Web ページがそれを処理して応答を返します。会話を開始するには、元の Web ページで次のコードを使用する必要があります。

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

...そして、どういうわけか、受信ページの ASP コードは、送信された情報を見ることができなければなりません。考えられることはすべて試しました。情報はリクエスト オブジェクトquerystringまたはフォーム配列にありません (コンテンツ タイプが であるため)。リクエスト オブジェクト全体をそのand/orメソッドを介してtext/xmlに渡そうとしました。domdocumentload()loadxml()

何をしても情報が見つかりませんが、 content-type を に変更するapplication/x-www-form-urlencodedと、request.form配列で表示されるため、送信されていることがわかります。

content-type が の場合、私の情報はどこにありtext/xmlますか?

4

1 に答える 1

6

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

次に、受信 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
于 2008-12-16T08:58:35.343 に答える