跨站点AJAX请求

我需要从一个网站向另一个域中托管的REST Web服务发出AJAX请求。

尽管这在Internet Explorer中很好用,但其他浏览器(例如Mozilla和Google

Chrome)强加了更加严格的安全性限制,这些限制禁止跨站点AJAX请求。

问题是我无法控制站点所在的域或Web服务器。这意味着我的REST Web服务必须在其他地方运行,并且我无法采用任何重定向机制。

这是进行异步调用的JavaScript代码:

var serviceUrl = "http://myservicedomain";

var payload = "<myRequest><content>Some content</content></myRequest>";

var request = new XMLHttpRequest();

request.open("POST", serviceUrl, true); // <-- This fails in Mozilla Firefox amongst other browsers

request.setRequestHeader("Content-type", "text/xml");

request.send(payload);

我如何在Internet Explorer以外的其他浏览器中进行此项工作?

回答:

也许JSONP可以提供帮助。

注意您必须将您的消息更改为使用json而不是xml

编辑

诸如flickr和Twitter之类的主要站点都支持带有回调等的jsonp

以上是 跨站点AJAX请求 的全部内容, 来源链接: utcz.com/qa/415288.html

回到顶部