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에서 해주시기 바랍니다.
| 번호 | 분류 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|---|
| 5066 | 기타 |
DogFoot개발
|
4년 전 | 1817 | |
| 5065 | PHP |
DogFoot개발
|
4년 전 | 1523 | |
| 5064 | PHP |
happyl
|
4년 전 | 1914 | |
| 5063 | node.js |
DogFoot개발
|
4년 전 | 1671 | |
| 5062 | node.js |
DogFoot개발
|
4년 전 | 1687 | |
| 5061 | node.js |
DogFoot개발
|
4년 전 | 1410 | |
| 5060 | node.js |
DogFoot개발
|
4년 전 | 1248 | |
| 5059 | node.js |
DogFoot개발
|
4년 전 | 1246 | |
| 5058 | 기타 |
DogFoot개발
|
4년 전 | 2694 | |
| 5057 | 웹서버 |
DogFoot개발
|
4년 전 | 2717 | |
| 5056 | MySQL | 4년 전 | 1499 | ||
| 5055 | 기타 | 4년 전 | 1427 | ||
| 5054 | OS | 4년 전 | 2064 | ||
| 5053 | 웹서버 | 4년 전 | 3619 | ||
| 5052 | OS | 4년 전 | 2415 | ||
| 5051 | PHP | 4년 전 | 2183 | ||
| 5050 | 웹서버 | 4년 전 | 1713 | ||
| 5049 | MySQL | 4년 전 | 1889 | ||
| 5048 | OS | 4년 전 | 2690 | ||
| 5047 | PHP | 4년 전 | 4366 | ||
| 5046 | MySQL | 4년 전 | 1805 | ||
| 5045 | MySQL | 4년 전 | 1929 | ||
| 5044 | MySQL | 4년 전 | 4123 | ||
| 5043 | MySQL | 4년 전 | 1880 | ||
| 5042 | 기타 |
|
4년 전 | 2631 | |
| 5041 | MySQL | 4년 전 | 1988 | ||
| 5040 | MySQL | 4년 전 | 1713 | ||
| 5039 | MySQL | 4년 전 | 1487 | ||
| 5038 | MySQL | 4년 전 | 1327 | ||
| 5037 | OS | 4년 전 | 4426 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기