还在纠结使用XMLHTTPRequest跨域

Bob*_*Bob 5 xmlhttprequest

我需要将数据 POST 到不同域中的服务器。该服务器正在使用 SSL,并希望数据采用 JSON 字符串的形式。我试图从 javascript 中做到这一点。

我创建数据并使用 JSON.stringify() 将其转换为正确的格式。然后我按如下方式发送:

var url = "https://api.postageapp.com/v.1.0/send_message.json";

http=new XMLHttpRequest();
http.open("POST", url, true);

http.setRequestHeader("Content-type", "application/json");
http.setRequestHeader("Connection", "close");

// create the data in a data structure named post_data
var JSONText = JSON.stringify(post_data);
http.send(JSONText);
Run Code Online (Sandbox Code Playgroud)

进行数据包跟踪时,我看到我的客户端与服务器进行了握手,但随后服务器两次回复“加密警报”,包括上次发回数据包的时间。浏览器调试器始终显示 405 - Method Now Allowed 错误。

我错过了什么才能让它发挥作用?当他们在他们的域内尝试时,它运行良好。

Mrc*_*ief 0

您不能像这样进行跨域发帖。

另一种方法是使用服务器端代理(阅读此链接以获得有关为什么不能这样做的详细解释)或iframe 方法