2013-12-11 3 views
2

$ .getJSON이있는 JS 파일이 AJAX 요청의 URL과 동일한 서버 (도메인)에서로드되는 경우 AJAX 도메인 간 요청 제한을 피할 수 있습니까? 다른 소수의 도메인 페이지에서 호출해야하는 serverA.com에 웹 서비스가 있다고 가정 해 보겠습니다. subdomain.serverA.com, serverB.com 등 JS가 serverA.com 배치 절대적 URL과 다른 도메인에 여러 페이지에 포함되어AJAX 도메인 간 제한 피하기

<script src="http://serverA.com/ajax.js" /> 

페이지의 URL은 예를 들어있을 http://serverB.com/page.html

그런 경우 $.getJSON('http://serverA.com/service/',...은 도메인 간 제한을 피할지 여부를 결정합니다.

즉, 브라우저는 AJAX 요청에 대한 동일한 출처 정책을 평가할 때 페이지 URL 또는 JS 소스 URL을보고 있습니까?

+0

"나는 도메인 간 제한을받을 수 있습니까?"라고 묻고있는 것 같습니다. 이 경우 JSONP와 함께 대답은 "예"입니다 - http://stackoverflow.com/questions/5943630/basic-example-of-using-ajax-with-jsonp –

+0

인터넷 검색을 시도 했습니까? 나는 당신의 질문 제목과 두 번째 결과를 검색했다 : http://stackoverflow.com/questions/11299438/jquery-how-to-remove-cross-domain-limitation – giammin

답변

1

즉, 브라우저는 AJAX 요청에 대해 동일한 출처 정책을 평가할 때 페이지 URL 또는 JS 소스 URL을보고 있습니까?

동일한 원본 정책은 스크립트가 실행되는 HTML 문서의 URL을 기반으로하며 스크립트 자체의 URL은 기반으로하지 않습니다.

$ .getJSON이있는 JS 파일이 AJAX 요청의 URL과 동일한 서버 (도메인)에서로드되는 경우 AJAX 상호 도메인 요청 제한을 피할 수 있습니까?

Yes

아니라 때문에 JS 파일이로드된다. 스크립트의 URL은 부적절합니다.

2

"내가 자바 스크립트의 교차 도메인 제한을 사용할 수 있습니까?"라고 묻는 것처럼 들립니다. 그게 아니라면

:

대답은 JSONP 여기에 좋은 정보가 많이있다

사용하여, "예"입니다 네가 묻는 질문은 너 네 조금 더 명확히하기 위해

+0

@Quentin 내 의문을 떨쳐 버렸다. 훌륭한 리소스를 연결해 주셔서 감사합니다. 프록시 솔루션은 제 환경에서 구현하기가 가장 쉽습니다. – Michlis

1

JSONP 대신 Cross Origin Resource Sharing을 권하고 싶습니다.

서비스 소유자는 인증 된 출처 목록 (정적, 동적 또는 공개) 목록을 제공하기 만하면됩니다.