【问题标题】:cross-site request跨站请求
【发布时间】:2010-09-14 16:47:07
【问题描述】:

应该用1号站点向2号站点发出请求。让1号站点是localhost,2号站点是Internet上的真实服务器。在站点 2 有一个文件 result.php,它接受 GET 请求:

$var = @$_GET['q'] ;
$s = $_GET['s'] ;
$typefile = $_GET['type'];


如果页面result.php发出请求,那么我们得到的URL是:result.php?q=%F4%FB%E2&type=1&search=%CF%EE%E8%F1%EA%21

如何更好地提出请求?有人可以给我一些例子来帮助吗? 4天我受苦了,没有意识到。

如果某处写的不清楚,请原谅我的英语不好。

【问题讨论】:

    标签: javascript cross-domain cross-domain-proxy


    【解决方案1】:

    我假设您是指 Ajax?由于same origin policy,您无法通过普通ajax 进行跨站点域请求。因此,托管在 localhost 上的脚本只能向 localhost 发出请求。

    现在,您可以使用 JSONP 或带有填充的 JSON 来解决此问题。这允许您从任何来源将脚本文件附加到 dom,以便代码可以在您的站点上执行。就个人而言,我实际上从未使用过它,而且我知道您必须相信脚本的来源,您不希望在您的网站上运行任意代码。

    因此,简而言之,如果您希望 localhost 向“site-2”发出请求,您需要在“site-2”上托管一个脚本,该脚本由您的 localhost 加载并发出请求。

    【讨论】:

      【解决方案2】:

      在阅读了布拉德刚才所说的之后,我要做的就是在请求中添加另一个链。

      我将调用本地 serverside script (cross domain proxy),它将请求并处理来自其他服务器的数据。

      参考文献

      【讨论】:

        猜你喜欢
        • 2010-09-24
        • 2014-06-21
        • 2018-06-14
        • 1970-01-01
        • 2017-04-01
        • 2012-08-14
        • 2013-02-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多