2
내가 아약스 웹 서비스의 URL을 사용하여 비누 웹 서비스에 크로스 도메인 요청을 보낼 예정이다 http://example1.asmx?op=GetVODCORS 405 (방법은 허용되지 않음)
내 코드 :
var url = 'http://example1.asmx?op=GetVOD';
var xhr = new XMLHttpRequest();
var strRequest = "<?xml version='1.0' encoding='utf-8'?>" +
"<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>" +
"<soap:Body>" +
"<getVODTypeList xmlns='http://tv21.com/' />" +
"</soap:Body>" +
"</soap:Envelope>"
xhr.open('POST', url, true);
xhr.setRequestHeader("Content-Type", "text/xml; charset=utf-8");
xhr.setRequestHeader("SOAPAction", "http://tv21.com/getVOD");
xhr.send(strRequest);
내가 크롬에서 클라이언트 코드를 실행할 때 IIS 7 서버 측에서, 내가 파일의 web.config
<add name="Access-Control-Allow-Origin" value="*" />
<add name="Access-Control-Allow-Methods" value="GET,PUT,POST,DELETE,OPTIONS" />
<add name="Access-Control-Allow-Headers" value="Content-Type" />
에 다음 줄을 추가 이미 한, 나는 405 오류가 있습니다
http://example1.asmx?op=GetVOD 405 (Method Not Allowed)
http://example1.asmx?op=GetVOD Invalid HTTP status code 405
누구든지 해결 방법을 알고 있습니까?
미리 감사드립니다.
감사합니다,하지만 불행히도 그것은 (나는 IIS 7.5을 사용하고 있습니다) 나를 위해 일하지 않았다 : 여기를 제거하는 설정입니다. 2 일간의 연구 끝에 "405 Method Not Allowed"를 피하기 위해 발견 된 유일한 해결책은이 답변에서 언급 한 것처럼 Application_BeginRequest 메소드에서 CORS 헤더를 정의하는 것이 었습니다. http://stackoverflow.com/a/14631068/ 827168 – pomeh