2009-05-31 5 views
1

나는 약간 혼란 스럽다.XMLHttpRequest.open, 원격 웹 사이트에서 작동합니까?

XMLHttpRequest는 원격 URL에서 작동합니까 아니면 로컬 파일이어야합니까? 그물에 대한 혼합 된 정보가있는 것 같습니다.

w3.org : 에 따르면 XMLHttpRequest 객체는 HTTP를 통해 원래 서버에 프로그래밍 방식으로 연결하는 스크립트에서 사용할 수 있습니다.

하지만 그것은 프록시를 사용하지 않고 (RSS로 확인하기를 원할 경우, 예를 들어 비스타 가젯) 로컬이 아닌 웹 페이지에 액세스하는 데 사용 보았다 ...

것은 나에게 제발 계몽!

답변

2

환경에 따라 다릅니다. 일반 웹 페이지에서 JavaScript를 실행하면 XMLHttpRequest는 다른 사이트에 연결할 수 없습니다. (그것이 w3.org에서 말하는 것으로 브라우저는이 제한을 구현합니다.) 그러나 일부 상황 (예 : Vista 가젯 및 Greasemonkey)에서는 AJAX 요청의 모든 사이트에 연결할 수 있습니다.

+0

의미가 있습니다. 보안 예방 조치를 우회하지 않습니까? 가제트가 xss를 사용할 수 없습니까? – kylex

+1

예, 그들은 xss 가능합니다. 신뢰하지 않으면 설치하지 마십시오. – pts

0

표준 웹 페이지에서는 권한이 "http : // *"인 Chrome 확장 프로그램과 같이 권한이 부여 된 응용 프로그램에서는 실행할 수 없습니다. 내 의견으로는 이것은 정상적인 웹 페이지에 대한 어리석은 제한이며 iframe을 사용하여 수행 할 수있는 피해와 피해는 브라우저가 (내 의견으로는 오랫동안) 사용할 수 없도록합니다.

관련 문제