从一个PHP文件获取JSON数据

3

大家早上好,

我是一个json初学者,我有一个格式化的数据(数组)从php文件编码并发送过来,我想要的只是如何获取这个数据并将其简单地提醒?

我的对象从php文件发送的形式如下:{"stat":"opened","do":"close"} 我发现最好的方法是 var obj = jQuery.parseJSON(???) 但我真的无法让它起作用,Google这次不想帮助我!!

编辑:从post响应中收到的json对象:$.post("page.php",{},function(data){/*Here I should pars data and act with*/});

如果你能在这个问题上给我支持,我会非常感激!

谢谢。


你能提供更多的Javascript代码吗?这样我们就可以看到它是如何检索有问题的PHP文件以及失败的原因。 - Conspicuous Compiler
3个回答

2

使用JSON响应时,您不需要使用jQuery.parseJSON()手动将其解析为JavaScript对象。

您可以通过在jQuery.post()中指定dataType参数来告诉jQuery期望的数据类型 (文档)。

例如,

jQuery.post(
    "file.php",
    function (data) { /* data is a JS object already-parsed */ },
    "json"  // <-- tell jQuery that we expect a JSON response
);

你应该在PHP脚本中发送一个 Content-Type 头信息,告诉jQuery(以及访问该脚本的所有其他内容)该响应是JSON格式,并使用 application/json 内容类型。

2
如果您使用jQuery,只需将JSON字符串传递给$.parseJSON()即可。返回值是本地对象。
var obj = jQuery.parseJSON('{"stat":"opened","do":"close"}');
console.log(obj.stat, obj.do);

谢谢Alex,你一直关注我的话题,事实上,我从一个帖子的回复中获取了数据:$.post("file.php",{},function(data){/*在这里我应该解析JSON对象以便进行操作*/}); - Nadjib Mami
但问题还没有解决,我只是提供了我接收数据的详细信息。 - Nadjib Mami
@dany90 请在 data 变量上尝试它。 - alex
哇,上帝我多么接近啊,谢谢Alex,你再次激励了我。解决方案是var obj = jQuery.parseJSON(data); alert(obj.stat);就像所说的一样,解决方案总是比想象中更接近,再见! - Nadjib Mami

0
在你的 PHP 文件中,你还应该设置 header('Content-type: application/json');

1
也许您想用一些奖励来标记答案 :) - Rizwan Sharif

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接