티스토리 뷰

자바스크립트로 웹앱 개발시 Ajax 사용하면 아래와 같은 에러에 봉착(?)할 때가 있다.

“Cross origin requests are only supported for HTTP.”

Ajax연동시 보안상 외부서버로의 연동이 안 되는 것인데, 나의 경우엔 HTML5기반의 스마트TV나 셋탑환경하에서 돌아가는 앱을 개발하고 있는 터라 이들이 지원하는 브라우저는 기본적으로 이 부분(크로스 도메인 관련)이 문제가 되진 않는다. 허나 PC에서 먼저 개발이 되어야 하는데 그럴 때 이러한 에러 해결방법은 아래 방법처럼 크롬브라우저를 실행할 때 '웹보안' 설정을 끄면 된다.(사파리나 파이어폭스는 이리 안해도 그냥 됨.)

(뭐, jsonp 나 기타 다른 방법들도 있겠으나, 간단하게 할 수 있는 방법이라 일단 요렇게 한다.)


각각 터미널 또는 콘솔창에서,

[OSX]

open -a Google\ Chrome --args --disable-web-security


[Windows]

C:\Program Files (x86)\Google\Chrome\Application>chrome.exe --disable-web-security --allow-file-access-from-files


이렇게 실행을 하면 크롬브라우저가 실행되면서 아래와 같은 메시지가 보인다. 그럼 비보안(?)모드로 실행된 것임.

(단, 실행전에 반드시 크롬브라우저를 종료해야 한다. 윈도우의 경우엔, 브라우저 종료만 해서는 안되고 '작업관리자'에서 chrome.exe로 되어 있는 프로세스를 모두 종료시켜야 한다. -> 확장앱들의 경우엔 이렇게 죽여야 했음. ㅡ.ㅡa;;;)



:-)

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
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
글 보관함