IE8에서 Microsoft의 XDomainRequest 개체를 사용하는 코드가 있습니다. 코드는 다음과 같습니다.XDomainRequest를 SSL과 함께 사용할 수 있습니까?
var url = "http://<host>/api/acquire?<query string>";
var xdr = new XDomainRequest();
xdr.onload = function(){
$.("#identifier").text(xdr.responseText);
};
xdr.open("GET", url);
xdr.send();
"url"의 구성표가 "http : //"이면 명령이 정상적으로 작동합니다. 그러나 구성표가 "https : //"이면 IE8에서 "액세스 거부"JavaScript 오류가 발생합니다. 두 스키마 모두 FF 3.6.3에서 제대로 작동합니다. 여기서 FFML은 XmlHttpRequest를 사용합니다. 두 브라우저 모두 W3C 액세스 제어를 준수하고 있습니다. "http : //"는 두 브라우저 모두에서 교차 출처를 사용합니다. 따라서 문제는 IE8, XDomainRequest 및 SSL입니다.
SSL 인증서는 문제가 아닙니다. IE8의 주소 표시 줄에 https : // <host
> /을 입력하면 <host
>은 위의 "url"과 동일하지만 페이지가 올바르게로드됩니다.
다음과 같이 표시됩니다.
- 브라우저에서 직접 https : // <host
> /를 입력하면됩니다.
- https : // <host
>/api/acquire를 누르십니까? <query string
> via XDomainRequest는 허용되지 않습니다.
할 수 있습니까? 나는 뭔가를 남겨두고 있습니까?
fwiw, 호스팅 페이지가 https를 통해 제공되고 요청 된 도메인이 호스팅 페이지의 하위 도메인 인 경우에도 https URL에 대한 XDR 요청에 문제가 있습니다. '둘 모두에 http를 사용하면 작동합니다. 하나. – broofa
요청 페이지가 https 인 경우에도 https를 사용하는 XDR에서 운이 없었습니다. 'onerror' 이벤트 (콜백은 유용하게 제로 정보가 주어짐)를 단순히 트립합니다. 내 개발 컴퓨터에있는 두 개의 가상 호스트 사이에서 통신 중이며 & 그게 아무 상관이 있는지 궁금해하기 시작했습니다 (자체 서명 된 인증서?). –
@SethBro 예 저는 현재 작업중인 프로젝트의 자체 서명 인증서에 대해 궁금합니다. – the0ther