首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >双引号和反斜杠JSON回复

双引号和反斜杠JSON回复
EN

Stack Overflow用户
提问于 2016-07-28 16:46:25
回答 1查看 291关注 0票数 0

使用供应商提供的API,我得到了如下格式的JSON回复:

代码语言:javascript
复制
{"d":"{\"IdProduct\":0,\"Status\":0,\"Errors\":[\"B_MESSAGE_INVALID_REQUIRED_FIELDS\"]}"}

在尝试使用JMS (PHP)反序列化时,这会导致问题,因为d的内容不被视为对象,而是字符串。

我尝试过使用数组和json_encode()从PHP创建json,使用反序列化方法一切都很好:

代码语言:javascript
复制
{"d":{"IdProduct":123456,"Status":1,"Errors":["B_MESSAGE_INVALID_REQUIRED_FIELDS"]}}

有没有可能从我这边去掉无用的反斜杠和引号?供应商似乎无法更改格式。

EN

回答 1

Stack Overflow用户

发布于 2016-07-28 16:49:23

看起来API返回了一个编码到JSON对象中的JSON字符串。这意味着,您首先需要对“外部”对象进行解码,然后对$obj['d']进行JSON解码,因为它是一个JSON字符串。

代码语言:javascript
复制
json_decode(json_decode($json)->d)

显然,应该有人修复API,使其不返回双重编码的JSON。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38631337

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档