6

CORS를 사용하고 쿠키를 설정하는 GWT 응용 프로그램이 있습니다. 그것은 크롬, 파이어 폭스, 오페라에서 잘 작동하지만 IE10 (버전 10.0.9200.16521)에서이 오류가 얻을 :CORS가 IE10의 쿠키와 작동하지 않습니다.

xhr.withCredentials = true; 

: 나는 오류가이 실행할 경우에 슬로우 것을 볼

SCRIPT5022: com.google.gwt.core.client.JavaScriptException: (InvalidStateError) 
code: 11 
ABORT_ERR: 20 
DATA_CLONE_ERR: 25 
DOMSTRING_SIZE_ERR: 2 
HIERARCHY_REQUEST_ERR: 3 
INDEX_SIZE_ERR: 1 
INUSE_ATTRIBUTE_ERR: 10 
INVALID_ACCESS_ERR: 15 
INVALID_CHARACTER_ERR: 5 
INVALID_MODIFICATION_ERR: 13 
INVALID_NODE_TYPE_ERR: 24 
INVALID_STATE_ERR: 11 
NAMESPACE_ERR: 14 
NETWORK_ERR: 19 
NOT_FOUND_ERR: 8 
NOT_SUPPORTED_ERR: 9 
NO_DATA_ALLOWED_ERR: 6 
NO_MODIFICATION_ALLOWED_ERR: 7 
PARSE_ERR: 81 
QUOTA_EXCEEDED_ERR: 22 
SECURITY_ERR: 18 
SERIALIZE_ERR: 82 
SYNTAX_ERR: 12 
TIMEOUT_ERR: 23 
TYPE_MISMATCH_ERR: 17 
URL_MISMATCH_ERR: 21 
VALIDATION_ERR: 16 
WRONG_DOCUMENT_ERR: 4: InvalidStateError 
B3D7C8F35C000AA1ADFE700845710C1A.cache.html, line 1102 character 7 

Make a CORS request in IE9 with cookies?

:
function create_3(){ 
    var xhr; 
    if ($wnd.XMLHttpRequest) { 
    xhr = new $wnd.XMLHttpRequest; 
    } 
    else { 
    try { 
     xhr = new $wnd.ActiveXObject('MSXML2.XMLHTTP.3.0'); 
    } 
    catch (e) { 
     xhr = new $wnd.ActiveXObject('Microsoft.XMLHTTP'); 
    } 
    } 
    xhr.withCredentials = true; 
    return xhr; 
} 

내가이 게시물을 발견 : 여기 GWT 자바 스크립트 코드

그러나 IE10으로 업그레이드했는데 아무런 차이가 없었습니다.

비슷한 문제가 발생하는 사람이 있습니까?

+0

서버에 CORS 고유 헤더가 추가되어 있습니까? 'Access-Control-Allow-Origin'과'Access-Control-Allow-Credentials' 헤더를 반환해야합니다 (적어도). – monsur

+0

예 헤더가 설정 중이며 위에서 언급 한 것처럼 Chrome, Firefox, Safari 및 Opera에서 작동합니다. IE10 (및 IE9)에서는 GWT 자바 스크립트 파일이 다운로드되고 실행될 때 위에 나열된 예외가 발생합니다. – Tomas

+0

이것은 관련있는 것 같습니다 : http://stackoverflow.com/questions/12643960/internet-explorer-10-is-ignoring-xmlhttprequest-xhr-withcredentials-true – Tomas

답변

7

나는 (CORS를 사용하여, 일반적으로 GWT가 아닌) 비슷한 문제가있었습니다. 브라우저 설정이 제 3 자 쿠키 (IE10> 인터넷 옵션> 개인 정보> 고급> 제 3 자 쿠키> 동의)를 차단하고있는 것으로 나타났습니다. 이 문제를 해결하기 위해 "자동 쿠키 처리 무시", "수락"(타사 쿠키) 및 "항상 세션 쿠키 허용"을 선택했습니다.