Javascript XMLHttpRequest.open,它在远程网站上工作吗?

Javascript XMLHttpRequest.open,它在远程网站上工作吗?,javascript,Javascript,我对此有点困惑 XMLHttpRequest在远程URL上工作还是必须是本地文件?网上的信息似乎好坏参半 根据w3.org:脚本可以使用XMLHttpRequest对象通过HTTP以编程方式连接到其原始服务器 但我见过它用来访问非本地网页(在vista小工具中,例如rss提要),而不使用代理 请开导我 这取决于环境。如果在常规网页上运行JavaScript,XMLHttpRequest将无法连接到任何其他网站。(这就是w3.org所说的,浏览器确实实现了这一限制。)然而,在某些环境中(如Vist

我对此有点困惑

XMLHttpRequest在远程URL上工作还是必须是本地文件?网上的信息似乎好坏参半

根据w3.org:脚本可以使用XMLHttpRequest对象通过HTTP以编程方式连接到其原始服务器

但我见过它用来访问非本地网页(在vista小工具中,例如rss提要),而不使用代理


请开导我

这取决于环境。如果在常规网页上运行JavaScript,XMLHttpRequest将无法连接到任何其他网站。(这就是w3.org所说的,浏览器确实实现了这一限制。)然而,在某些环境中(如Vista gadgets和Greasemonkey),可以通过AJAX请求连接到任何网站。

在standerd网页上,您不能在具有授权权限的应用程序中,例如具有“http://*”权限的chrome扩展设置在我看来,这对普通网页来说是一个愚蠢的限制。任何可以用它造成的损坏/伤害都可以用iframe来完成,浏览器拒绝禁用它们(我认为这已经过期很久了)。

Nakes sense。这不是绕过了安全防范措施吗?小工具不支持xss吗?是的,它们支持xss。如果您不信任它们,请不要安装它们。