当前位置:首页> 正文

关于 jquery:网站之间的通信(使用 Javascript 或?)

关于 jquery:网站之间的通信(使用 Javascript 或?)

Communicating between websites (using Javascript or ?)

这是我的问题 - 我想在两个网站之间进行交流,我正在寻找一个干净的解决方案。当前的解决方案使用 Javascript,但由于(可以理解的)跨站点脚本限制,存在令人讨厌的解决方法。

目前,网站 A 使用名为 jqModal 的 jQuery 插件打开一个包含网站 B 的模式窗口。网站 B 做了一些工作并将一些结果返回给网站 A。要返回该信息,我们必须解决跨站点脚本限制 - 网站 B 创建一个 iframe,它引用网站 A 上的页面并包含 *fragment identifiers" 包含要返回的信息。网站 A 轮询 iframe 以检测返回的信息。这是一种常见的技术,但它是 hacky。

有一些变体,例如 CrossSite,我也许可以使用从网站 B 到网站 A 的 HTTP POST,但我试图避免页面刷新。

有人有其他选择吗?

编辑:我希望避免在网站 B 上保存状态。


我最好的建议是在每个站点上创建一个 web 服务,以便其他站点可以调用需要传递的信息。如果需要安全性,可以很容易地向该系统添加类似 SSL 的身份验证方案(或实际的 SSL,如果您愿意的话),以确保只有两个服务器能够与各自的 Web 服务通信。

这可以让您避免在涉及一个站点在另一个站点上打开窗口的任何方案中固有的 hackiness。


如果 jQuery 比 1.2 更新,你可以使用 JSONP


我相信@pat 指的是这个

"从 jQuery 1.2 开始,如果您指定 JSONP 回调,您可以加载位于另一个域中的 JSON 数据,"
http://docs.jquery.com/Ajax/jQuery.getJSON#urldatacallback


@jmein - 你已经描述了如何创建一个模态弹出窗口(这正是 jqModal 所做的)但是你错过了模态窗口的内容是从另一个域提供的。涉及的两个域属于两个独立的公司,因此不能按照您描述的方式合并。


展开全文阅读

相关内容