我正在尝试将 JSON 数据发送到服务器(本地主机到托管站点),不幸的是它不起作用。
我在搜索解决方案时在此站点上找到了这段代码,并对其进行了一些修改。
proto.html
这是启动功能的按钮
<button onclick="proto_test();">Test Button</button>
这是我遇到问题的函数的代码。
function proto_test() {
var data = {},
data['abc'] = [];
data['abc'].push('some info');
data['abc'].push('some more info');
json_data = JSON.stringify(data);
$.post("proto2.php", {'updateValues': json_data}, function(data) {
alert(data);
});
}
proto2.php
这是我正在回应的 php 文件的代码。
<?php
echo $_POST['updateValues'];
?>
这是点击按钮后的样子。它提醒结果。 (LOCALHOST TO LOCALHOST) 换句话说,我正在使用 XAMPP。
然后如果我更改 url 以传递数据。我将其传递给服务器(托管站点) 它不起作用。
$.post("http://www.mysite.com/proto2.php", {'updateValues': json_data}, function(data){
alert(data);
});
有什么办法可以解决这个问题吗?如果有人帮助我,我会很高兴。
提前致谢。
最佳答案
阅读 jQuery.post() API 中的附加说明. AJAX 请求受制于 same origin policy .这就是为什么您不能对不同的域执行 ajax post。
如果您可以控制目标服务器,您可以 enable cross-origin resource sharing .查看this answer关于如何启用 CORS。注意:并非所有浏览器都支持 CORS。参见 CORS browser support .
关于php - 将 JSON 数据发送到 PHP 服务器(本地主机到托管站点),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13925794/