我有html頁面。按下提交按鈕後,請求正在發送。我的問題是請求的標題被降低了!我使用IE瀏覽器,因爲它是合法的限制。HTTP標頭變爲小寫
<html>
<head>
<script language="JavaScript" type="text/javascript">
function AjaxRequest(url,callback,method){
var req = new XMLHttpRequest();
req.onreadystatechange= function(){
if(req.readyState != 4) return;
callback(req);
}
req.open(method,url,true);
var hdrsArr = document.getElementById('headers').value.split('&');
for (var i = 0; i < hdrsArr.length; i++){
var p = hdrsArr[i].split('=');
req.setRequestHeader(p[0],p[1]);
}
var params = document.getElementById('params').value ;
req.send(params);
}
function AjaxResponse(res){}
function MakeRequst(){
alert('');
var url = "http://localhost:8080/test-servlet/TestServlet";
AjaxRequest(url,AjaxResponse,"POST");
}
</script>
</head>
<body>
<input type='text' id="headers" size="200" value='key=value&SOAPAction=requestCreditBureau&Content-Type=text/xml;charset=UTF-8&Accept=text/xml'/><br>
<input type='text' id="params" size="200" value='<?xml version="1.0" encoding="UTF-8"?><CB_Document appl="00000000000127725161" >[....]</CB_Document>'/><br>
<input type='button' value='doPost' onClick="MakeRequst();"/><br>
<div id="response_div"></div>
</body>
</html>
謝謝!我發送頭文件到我們的合作伙伴應用程序,區分大小寫並等待SOAPAction(不是soapaction)參數。 – Dev 2013-04-23 17:12:03
請將它們指向RFC 2616,並告訴它們**開始遵循標準**? :-)更嚴重的是,可悲的是沒有辦法在客戶端做你想做的事情。您可以通過本地腳本代理請求或修改接收者。恐怕,那些是你唯一的兩個「真實」選擇。 – 2013-04-23 17:16:25
(如果你與這些合作伙伴有商業關係,順便說一句,你可以讓他們基於技術上的無能而感到害怕,值得擠壓他們,你佔了上風,他們可能知道它。) – 2013-04-23 17:17:15