任何與此有關的幫助將不勝感激;我已經待了好幾天了。使用經典ASP發送'application/soap + xml'SOAP請求
下面是我到目前爲止的代碼;不幸的是,當我運行它時,我得到一個HTTP 415錯誤; 無法處理消息,因爲內容類型爲'text/xml; charset = UTF-8'不是預期的類型'application/soap + xml; charset = utf-8'。
我必須發送application/soap + xml的內容類型,因爲這是Web服務允許的唯一類型;我必須在傳統的ASP中做到這一點。
我試圖改變「發送」線「objRequest.send objXMLDoc.XML」但這然後給了我一個HTTP 400錯誤的請求錯誤。
strXmlToSend = "<some valid xml>"
webserviceurl = "http://webservice.com"
webserviceSOAPActionNameSpace = "avalidnamespace"
Set objRequest = Server.createobject("MSXML2.XMLHTTP.3.0")
objRequest.open "POST", webserviceurl, False
objRequest.setRequestHeader "Content-Type", "application/soap+xml"
objRequest.setRequestHeader "CharSet", "utf-8"
objRequest.setRequestHeader "action", webserviceSOAPActionNameSpace & "GetEstimate"
objRequest.setRequestHeader "SOAPAction", webserviceSOAPActionNameSpace & "GetEstimate"
Set objXMLDoc = Server.createobject("MSXML2.DOMDocument.3.0")
objXMLDoc.loadXml strXmlToSend
objRequest.send objXMLDoc
set objXMLDoc = nothing
您可以使用Fiddler或任何HTTP流量分析工具來查看發佈到web服務(從瀏覽器消耗的時間)的內容嗎?然後,讓你的XMLHttpRequest發佈相同的內容。 – shahkalpesh 2010-01-07 12:34:10
@shahkalpesh:你如何讓瀏覽器「使用」Web服務?尤其是一個需要POST方法? – AnthonyWJones 2010-01-07 17:57:09