s

jQuery없이 네티브자바스크립트로 서버에 요청보내기 6- CORS

CORS, or Cross Origin Resource Sharing (sending cross-domain ajax requests) 에 대해서는 개발분들은 잘 아실거라 봅니다.

먼저 jQuery코드를 본다면

[code]

$.ajax('http://someotherdomain.com', {

    method: 'POST',

    contentType: 'text/plain',

    data: 'sometext',

    beforeSend: function(xmlHttpRequest) {

        xmlHttpRequest.withCredentials = true;

    }

});

[/code]

위의 코드처럼 jQuery는 withCredentials 값을 설정하여 요청헤더에 첨부하여 요청을 보냅니다.

그러니 이기능은 IE8,9에서는 작동하지 못합니다.

그것은 IE8,9는 withCredentials가 아니라 XDomainRequest 를 사용하기때문입니다.

네티브자바스크립트로 다음과 모든 웹브라우저에서 사용가능한 코드는 다음과 같습니다.

[code]

// For cross-origin requests, some simple logic

// to determine if XDomainReqeust is needed.

if (new XMLHttpRequest().withCredentials === undefined) {

    var xdr = new XDomainRequest();

    xdr.open('POST', 'http://someotherdomain.com');

    xdr.send('sometext');

}

[/code]

 

 

|

댓글 1개

신고가 접수되어 자동으로 블라인드 된 댓글입니다. 원문을 보시려면 를 클릭하세요.

댓글을 작성하시려면 로그인이 필요합니다. 로그인

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
PHP 2년 전 조회 694
2년 전 조회 960
2년 전 조회 926
2년 전 조회 584
2년 전 조회 1,099
2년 전 조회 1,008
2년 전 조회 1,142
2년 전 조회 770
PHP 2년 전 조회 698
PHP 2년 전 조회 1,803
PHP 2년 전 조회 1,584
PHP 2년 전 조회 2,301
PHP 2년 전 조회 732
JavaScript 2년 전 조회 878
JavaScript 2년 전 조회 721
JavaScript 2년 전 조회 652
PHP 2년 전 조회 763
기타 2년 전 조회 805
JavaScript 2년 전 조회 633
JavaScript 2년 전 조회 660
JavaScript 2년 전 조회 698
JavaScript 2년 전 조회 905
JavaScript 2년 전 조회 677
기타 2년 전 조회 706
PHP 2년 전 조회 770
JavaScript 2년 전 조회 637
PHP 2년 전 조회 2,185
PHP 2년 전 조회 647
기타 2년 전 조회 749
MySQL 2년 전 조회 1,486
🐛 버그신고