【发布时间】:2012-08-25 04:23:13
【问题描述】:
有没有办法用javascript向非合作网站发送HTTP请求?我知道这是因为同源策略而被禁止的,但是有什么方法可以做到,包括实验性 API、Java 小程序、Flash、浏览器扩展、隐藏设置、特殊证书等?如果用户明确地必须授予我的页面访问其他站点的权限,那很好,实际上这是非常合理的。
背景:我正在尝试通过抓取多个站点的 html 来进行混搭,我想从用户的 IP 地址而不是从我的服务器进行。
【问题讨论】:
-
我认为这与 XSS 无关。
-
是的,有几种方法。最可靠的是位于您自己的服务器上的代理。 Here's 我现在找到的更简单的方法。我还建议使用
iframe,您可以使用javascript 简单地操作它的src属性。 -
我相信所有成熟的浏览器都允许他们的扩展/插件进行跨域访问。您可能会编写从跨域站点获取信息的插件,然后通过 JavaScript API 提供数据。当然,这种方法的问题是您需要为每个浏览器维护一个单独的扩展。
标签: javascript xss same-origin-policy