XMLHttpRequest를 다른 도메인으로 만들 수 있습니까?
XMLHttpRequest를 다른 도메인과 함께 사용할 수 있는 방법이 있습니까?
서버를 사용하지 않고 구글에서 xml을 파싱하고 싶어서 실행하기가 최소한으로 복잡합니다.
var req = getXmlHttpRequestObject();
...
req.open('GET', 'http://www.google.de/ig/api?weather=Braunschweig', true);
req.setRequestHeader("Content-Type","text/xml");
req.onreadystatechange = setMessage;
req.send(null);
서버 쪽에서 실행하는 것은 선택의 여지가 없습니다. 그러면 묻지 않아도 됩니다.
아니요, 지금은 아닙니다.저는 미래를 위한 표준 그룹별로 계획/설계가 진행 중이므로 안전하게 진행할 수 있다고 읽었습니다.
그렇지 않으면 사이트 간 스크립팅 취약성이 만연하게 됩니다.
JSONP는 다른 사이트 API가 지원한다면 가능한 솔루션입니다.
HTML5는 이제 XmlHttpRequest 레벨 2에서 Cross Origin 요청을 지원합니다.
http://www.html5rocks.com/en/tutorials/cors/
보안 문제입니다. 대부분의 브라우저는 이를 허용하지 않습니다.숨겨진 I 프레임을 사용하여 가져오기를 수행할 수 있지만 서버를 사용할 정도로 복잡합니다(브라우저에서 실행할 필요가 없는 경우 다른 언어로 전환).
클라이언트 측의 보안 문제(예: example1.com 에서 XMLHtpRequest 또는 jQuery(XMLHtpRequest의 래퍼)를 통해 example2.com 로 도메인 간 요청을 수행할 수 없습니다.이는 HTML5를 지원하는 최신 브라우저에서 CORS(cross origin resource sharing)를 통해 효과적으로 구현할 수 있으며, 이는 모든 클라이언트 브라우저에서 사용할 수 없습니다.따라서 해결책은 example1.com 의 example2.com 에 스크립트 태그를 삽입하는 것이며, 이 해결책은 JSON-P(패딩이 있는 JSON)로 알려져 있으며, 데이터가 서버(example2.com )에서 제공되는 모든 형식으로 제공될 수 있기 때문에 이름이 오해의 소지가 있습니다.구현 코드는 이 링크 http://newtechinfo.net/jsonp-for-cross-domain-ajax/ 에 나와 있습니다.
요즘 브라우저가 XSS 공격을 제한하는 SOP(Same Origin Policy) 때문에 불가능합니다.
서버측 스크립트(PHP 등)를 사용해야 합니다.
HTML5로 XHR을 다른 도메인으로 만드는 것이 가능합니다.또한 다른 웹사이트와 HTTP로 통신할 때 XHR로 다른 프로토콜 요청을 할 수 있습니다.
서버 쪽에서 무언가를 시도할 수 있습니다.따라서 애플리케이션에서 원격 사이트에 요청을 하면 결과를 받아 고객에게 반환할 수 있습니다.그러면 AJAX 호출은 자신의 서버만 호출하고 작동합니다.
언급URL : https://stackoverflow.com/questions/324697/can-i-make-an-xmlhttprequest-to-another-domain
'programing' 카테고리의 다른 글
| 사용자 지정 게시 유형 관리 페이지에 사용자 지정 분류법 열 표시 (0) | 2023.09.17 |
|---|---|
| 사용자 지정 보기에 대해 attrs.xml의 동일한 이름의 특성 (0) | 2023.09.17 |
| jquery($query)($query)($query.on), selector, ...) vs $(query.on), (0) | 2023.09.17 |
| 테이블 필드에 하이픈이 포함될 수 있습니까? (0) | 2023.09.17 |
| 스위프트 네이티브 베이스 클래스 또는 NSObject (0) | 2023.09.17 |