Chrome (43.0.2357.81) 网络预览面板中的 JSON 树

问题描述 投票:0回答:2

有没有其他人注意到网络面板中 Chrome 的预览选项卡现在将 json 输出为字符串(就像响应选项卡一样)而不是将其格式化为树?

如果是这样,你能指出正确的方向来解决它吗?

Chrome 版本为 43.0.2357.81 m

干杯!

json google-chrome networking google-chrome-devtools preview
2个回答
1
投票

您是否为响应设置了正确的内容类型标题? 例如,在 PHP 中:

header('Content-Type: application/json');

0
投票

JSON 结果集可能不会作为对象处理的原因取决于 JSON 的形成方式。结果 JSON 字符串必须使用 double quotes 作为键和值,以便将其解析为对象。

换句话说,返回:

{ "msg" : "Success...", "numRows" : 23, "records" : [ { "name" : "Tony", ... ] } }

当我的 JSON 结果集停止被解析为对象时,其他人添加了使用 single quotes 作为键和/或值的 JSON。

{ "msg" : "Success...", ... , 'archiveMsg' : 'Using archive data' }

只用了一次在数据结构中使用单引号就中断了显示。它在 JavaScript 中仍然可以正常运行,但我不知道为什么 AJAX 结果 JSON 现在是一个未解析的字符串,而不是一个对象。花了一些时间来侦探那个。

Chrome 和 Brave 是我测试过的唯一浏览器。

注意:可以返回“application/json”的标头类型,但 Chrome 和 Brave 只是“漂亮地打印”了 JSON 结构。不理想,但它帮助我一瘸一拐地前进,直到我弄清楚真正的问题是什么。

© www.soinside.com 2019 - 2024. All rights reserved.