0

以下のコードは、Windows 7 IIS のクラシック ASP と Windows Server 2008 で正常に動作し、エラーが発生します (以下に示すように)。

コードは次のとおりです。

url = "https://api.test.credex.net:10001/merchant/xxxx/requests"
set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP") 
postData = "" // some json formatted data
xmlhttp.open "POST", url, false
xmlhttp.setOption(2) = 13056
xmlhttp.setOption(3) = "/credex/credex_net_ext_bundle.pem"
xmlhttp.setRequestHeader "Content-Type", "application/json"
xmlhttp.setRequestHeader "Accept", "application/json"
xmlhttp.setRequestHeader "Authorization", "Basic "&Base64Encode("xxxxxxxx")
xmlhttp.send postData

Response.write xmlhttp.responseText     
set xmlhttp = nothing

エラー:

カテゴリ : msxml3.dll
列 : -1
簡単な説明 : クライアントとサーバーは共通のアルゴリズムを持っていないため、通信できません。
エラー行番号は「xmlhttp.send postData」を指しています

4

1 に答える 1

0

コード修正行で

set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP") 

set xmlhttp = CreateObject("Msxml2.ServerXMLHTTP.6.0") 

これを試して

<%@language=Jscript%>
<%
   var objSrvHTTP;
   var objXMLSend;
   var objXMLReceive;
   objSrvHTTP = Server.CreateObject("Msxml2.ServerXMLHTTP.6.0");
   objXMLSend = Server.CreateObject("Msxml2.DOMDocument.6.0");
   objXMLReceive = Server.CreateObject("Msxml2.DOMDocument.6.0");

   objXMLSend.async = false;
   objXMLSend.loadXML ("<msg><id>2</id></msg>");

   objSrvHTTP.open ("POST","http://someotherserver/respond.asp",false);
   objSrvHTTP.send (objXMLSend);
   objXMLReceive = objSrvHTTP.responseXML;
   Response.ContentType = "text/xml";
   Response.Write (objXMLReceive.xml);
%>
于 2012-08-28T18:11:25.857 に答える