我试图收到由json
发送的post
请求,并对其执行JSON.parse
。但是这个错误发生了:
Uncaught SyntaxError:位置2的JSON中出现意外的标记m 在JSON.parse() at:1:19
以下代码重现错误:
const string = '{ msg_reject: \'Rejeitado porque sim\', accept: 1, photo: \'FSADKJK23B1\' }'
const json = JSON.parse(string)
这就是我在post
{ msg_reject: 'Rejeitado porque sim', accept: 1, photo: 'FSADKJK23B1' }
我发送的方式有问题吗?
答案 0 :(得分:26)
正确格式化的JSON字符串在每个键和每个字符串值周围都有"
个双引号。
const string = '{ "msg_reject": "Rejeitado porque sim", "accept": 1, "photo": "FSADKJK23B1" }';
const json = JSON.parse(string);
console.log(json);

答案 1 :(得分:5)
您的JSON字符串格式不正确,您必须为密钥和&添加双引号"
。值为:
const string = '{ "msg_reject": "Rejeitado porque sim", "accept": 1, "photo": "FSADKJK23B1" }';
有许多可用于验证JSON字符串的在线解析器,我通常使用http://json.parser.online.fr/在需要时验证我的JSON。
答案 2 :(得分:0)
发送邮件时,首先对对象进行Stringify, 使用JSON.stringify(object)并发送,同时检索JSON.parse应该可以正常工作