微信小程序后台返回的JSON字符串转JSON报错问题解决方案

博主在学习小程序开发时遇到后台返回的JSON数据解析错误,由于JSON字符串开头存在不可见字符导致SyntaxError。尝试了多种解决方法,包括修改PHP的json_encode输出和使用JSON.stringify,问题仍未解决。最终发现是字符串开始有一个空字符,通过截取字符串从第二个字符开始解析成功解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在学习小程序时候,发现后台返回的JSON数据字符串转JSON出错,如下:

转换语句:if (JSON.parse(uploadFileRes.data).code == 401) {//开始出错

SyntaxError: Unexpected token  in JSON at position  at JSON.parse (<anonymous>)

E文不太好,大致意思是JSON格式出错,我就把文本复制进行在线检查,没又问题,没办法,只能百度,解决办法如下:

1 修改为echo json_encode($data,true),测试没用。

2 字符串有不同的类型,我试着用JSON.stringify(uploadFileRes.data).code==1),同样报错

3  用了百度的N种方法没卵用。

4 最后看到有篇文章说是开始有个空字符导致,转为整数就可以了,但给了我一个思路,我想能不

     能把这个字符截取掉,不就可以了吗?马上开干

if (JSON.parse(uploadFileRes.data.slice(1)).code == 401) {///

在这个uploadFileRes.data做了一个截取,就可以了。

困扰我2天的问题终于解决了,万岁万岁,太开心了。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaozenbin

谢谢你的肯定

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值