지난 짬뽕나 프로젝트 기간동안 내내 문제를 일으켜온 크로스 도메인 문제…
일단 이 부분을 내가 맡은 파트가 아니라서 잠시 접어두고 있었는데…
오늘 찬찬히 소스 코드를 디벼보았다..
일단 자바스크립트에서 크로스 도메인 문제란,.. 보안과 직결된다..
자세한 내용은 크로스 도메인으로 검색해보면 나올것이고…
내가 오늘 해결한 방법부터 정리하면…
브라우저에 따라 2가지가 있겠다..
먼저 인터넷 익스플로러.. !! 크로스 도메인 문제를 체크하기전에 먼저 체크해야할게 있다..
바로 인터넷 옵션 – 보안 – 사용자 지정 수준 – 도메인 간의 데이타 소스 엑세스!!!
바로 요부분이다. 이게 IE 에서 디폴트로 사용안함으로 되어 있기때문에..
OpenAPI 로.. 특히 자바스크립트로 먼가를 할때.. 자꾸 접근제한 에러가 생긴다..
정확히 말하면,.. Ajax에선 XMLHttprequest 객체를 선언하고.. 이 객체의 Open() 메쏘드를 호출할때..
바로 이 접근 제한 문제가 발생한다..
은근히 해결책은 간단했다.. 오늘 정말 4시간동안.. 소스코드 분석하고.. GWT로 작성된거 ASP.NET 예제코드로 바꿔서 테스트해보고.. 쌩쑈를 한 기분이다. 그런데 결론은 ㅎㅎㅎ 삽질 삽질 삽질…. 하는 소리가 들리는군….
바로 IE 저 도메인 간 데이타 소스 엑세스를 사용안함에서 사용 이나 확인 으로 바꿔만 주면 되는것이었다..젠장..ㅜㅜ.. OTL ….난 왜, 또 삽질을 한것이더냐..ㅎㅎㅎ 삽질은 디버깅의 어머니라고 누가 말했떠냐.ㅎㅎㅎ
옵션에서 “사용함”보다는 “확인”을 권장한다.. 사용으로 해놓으면.. 브라우져로 서핑할때 마다 이상한 코드 저절로 다운받아서 실행하게 될찌 아무도 모르기 때문에… 확인으로 하는것을 적극 권장한다..
그럼 실제 OpenAPI로 호출했을때.. 접근권한 경고 메시지를 보게 될것이다..
가비~얍게… 확인 눌러주시고.. 다시해보면.. 잘 된다..ㅋㅋㅋ
반면 파이어폭스는 여러책을 참조한 결과.. 보안정책이 달라서..
보안메니져를 직접 호출해야한다고 하넹..-_-
요부분은 나중에 좀더 공부해서 정리해봐야겠땅..
오늘은 여까지.. 나랑 비슷한 문제를 가진사람들 제발 삽질을 안했으면 하는마음으로…작성했다..ㅎㅎ