티스토리 뷰
크로스도메인을 통한 데이터 전송은 자주 있는 방식인대요. jQuery 플러그인으로 GET과 Yahoo API를 이용한 플러그인이 있기는 하지만 간단한게 jQuery 의 기능만으로 구현하는 방법을 소개드리겠습니다.
우선 jQuery 의 코드 입니다.
$.ajax({ crossDomain:true, type: "POST", url: "http://api.test.com/testapi/", data: {url:document.URL}, success: function(data){ log(data); } });
위의 코드에서 주요하게 보실점은 바로 crossDomain:true 부분입니다. jQuery 에서 crossDomain 을 true로 설정하면서 크로스 도메인을 사용한다는 설정을 하게됩니다. 하지만 jQuery 설정만으로도 작동되면 좋겠지만 그렇지 못합니다.
위의 설정만으로 사용할경우 아래와 같은 에러를 보실수 있는대요. 서버 사이드에서 크로스 도메인을 허용하지 않아서 발생하는 에러 입니다.
XMLHttpRequest cannot load http://api.비밀.kr/comment/. Origin http://t.비밀.kr is not allowed by Access-Control-Allow-Origin.
따라서 서버측 페이지에도 아래와 같은 코드를 넣어 주도록합니다.
PHP기준
header('Access-Control-Allow-Origin: *');
해더 부분에 Access 허용을 * 로 정의해줌으로서 크로스 도메인 이라도 요청을 받게 됩니다.
ps. SESSION 데이터는 넘어가지 못하니 참고하시기 바랍니다.
* SESSION 정보는 다른 방법으로 처리 합니다.
'Dev WEB > jQuery' 카테고리의 다른 글
jQuery Mobile 에서 page 초기화를 막고 이벤트만 ( 원하는 옵션만 ) 이용하기 (0) | 2015.06.03 |
---|---|
jQuery 에서 trim 사용하기 (0) | 2015.03.08 |
jQuery 의 Color 출력 값 RGB를 Hex 로 바꾸기 (0) | 2015.03.07 |
jQuery 이벤트 중복 적용시 .off() 를 이용하여 이벤트 해제하고 다시 적용하기 (0) | 2015.03.07 |
jQuery 기본 플러그인 만들어 보기 (0) | 2015.03.03 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- Developer
- 인터넷
- 게임
- 에러
- 웹
- Laravel
- html
- 웹 개발
- php
- 설치
- Database
- mac
- 웹 서버
- 데이터베이스
- it
- 게임 개발
- 맥
- JavaScript
- 서버 개발
- SNS
- 웹 개발자
- 튜토리얼북
- 개발자
- Nodejs
- 개발
- 우분투
- ubuntu
- 서버
- cocos2d-x
- Tutorialbook
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함