나는 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
RFC 2616을 가리키고 ** 표준 시작 **을 말합니까? :-) 더 진지하게, 슬프게도 클라이언트 측에서 원하는 것을 할 수있는 방법이 없습니다. 로컬 스크립트를 통해 요청을 프록시하거나 수신자를 수정할 수 있습니다. 그 두 가지 "유일한"옵션입니다, 나는 두렵습니다. –
(해당 파트너와 비즈니스 관계에있는 경우, 기술적 인 무능력을 기반으로 이러한 파트너를 놀라게 할 수 있습니다. 조금만 짜내면 가치가 있습니다. 그것.) –