如何通过JavaScript发送跨域POST请求?
注意 - 它不应该刷新页面,然后我需要抓取并解析响应.
我需要从网站向另一个域中托管的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);
Run Code Online (Sandbox Code Playgroud)
如何在Internet Explorer旁边的其他浏览器中使用此功能?