这是我的情况:
我有一台for服务器机器、一台客户机和第三台机器,它们运行一些监听XMLHttpRequests的程序。
客户端从客户端机器访问then服务器,进行一些更改,然后单击“保存”。此时,数据正被发送回and服务器和第三台机器。所有这些都是使用Javascript和XMLHttpRequest对象完成的。
到had服务器的post工作正常,但是到第三台机器的post不起作用,因为它有不同的IP/域。
我怎么才能让它工作呢?客户端计算机->第三台计算机无法工作,因为它位于不同域的does服务器计算机->第三台计算机由于防火墙问题而无法工作
任何想法都是非常感谢的!
发布于 2010-06-30 03:46:30
您遇到的是问题,而不是防火墙问题。
如果这两台计算机共享一个顶级域,您可以
通过将它们各自的document.domain DOM属性相互设置为它们当前主机名的相同的限定的右手片段,
两个共享公共顶层域的站点可以选择通信,尽管没有通过“同一主机”检查。
否则,您可能需要将第一台主机设置为通过代理将请求发送到另一台主机。
发布于 2012-03-11 19:42:17
您可以在服务器上实现 (Cross-Origin Resource Sharing)。
主要桌面浏览器的当前版本已经支持它一段时间了,Opera和Explorer10是最后添加支持的。
不过,我不确定目前在移动浏览器中对CORS的支持有多广泛。
发布于 2010-06-30 04:25:03
您也可以使用iframe hack。由第二域托管的iframe可以在由第一域托管的页面中呈现,并且该iframe的window object将可从父页面的上下文中访问。
https://stackoverflow.com/questions/3144093
复制相似问题