php - 将 JSON 数据发送到 PHP 服务器(本地主机到托管站点)

标签 php javascript jquery ajax json

我正在尝试将 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。

Result

然后如果我更改 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/

相关文章:

php - 如何将原始输入放入动态下拉列表中

javascript - 如何在 Google Chrome 开发者工具中搜索范围变量?

javascript - maxlenght 或 ng-maxlength 似乎都不起作用

jquery - 使用 jquery AND 规则进行动态表单字段验证

php - 这是执行此 PHP 类的正确方法吗?

php - MySQLi 绑定(bind)结果并获取多行

javascript - 'ng new my-app' 错误

javascript - 在 jQuery 中重新排序表单数组的聪明、有效的方法?

jquery - <text> 中的代码不再执行

php - 使用 jQuery 将值发送到另一个页面