Client submitted invalid JSON: lexical error: invalid string in json text.↵
Client submitted invalid JSON: lexical error: invalid string in json text.↵
我有一个 ajax POST 方法,尽管我向服务器发送了什么,但显然是在值字段中附加了一个“↵”字符。我的代码:
$.ajax({
url: url,
type: "POST",
data: {"name" : "lol"},
dataType : "json",
contentType : "application/json; charset=utf-8"
});
返回的错误是错误代码 400 "Client submitted invalid JSON: lexical error: invalid string in json text.↵"
,控制台报告此 name=lol↵
是正在发送的数据。
我刚刚再次阅读了错误消息并查阅了文档 here。
您需要做的是以 JSON 格式发送您的请求,而不是表单数据。您指定了正确的 contentType,但您需要使用 JSON.stringify
转换您的数据
查看 this answer here 以获得可能的解决方案。
在您的情况下,它将是这样的:
$.ajax({
url: url,
type: 'POST',
data: JSON.stringify({
name: 'lol',
}),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
});
希望对你有用。如果这也不起作用,我会查看 dev.groupme.com 上的文档。也许您拼错了某些 JSON 字段?
我有一个 ajax POST 方法,尽管我向服务器发送了什么,但显然是在值字段中附加了一个“↵”字符。我的代码:
$.ajax({
url: url,
type: "POST",
data: {"name" : "lol"},
dataType : "json",
contentType : "application/json; charset=utf-8"
});
返回的错误是错误代码 400 "Client submitted invalid JSON: lexical error: invalid string in json text.↵"
,控制台报告此 name=lol↵
是正在发送的数据。
我刚刚再次阅读了错误消息并查阅了文档 here。
您需要做的是以 JSON 格式发送您的请求,而不是表单数据。您指定了正确的 contentType,但您需要使用 JSON.stringify
查看 this answer here 以获得可能的解决方案。 在您的情况下,它将是这样的:
$.ajax({
url: url,
type: 'POST',
data: JSON.stringify({
name: 'lol',
}),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
});
希望对你有用。如果这也不起作用,我会查看 dev.groupme.com 上的文档。也许您拼错了某些 JSON 字段?