这不是关于如何管理或纠正错误 JSON,而是关于如何向用户解释错误在错误 JSON 中的位置。
有没有办法找出解析器在 JSON 中的哪个位置失败。
我想在 node.js 应用程序中解决此问题,因此请尽可能将您的答案保留在该域中。
当我使用内置 JSON 对象和错误 JSON 的 parse 方法时,我只收到异常消息SyntaxError: Unexpected string
。我想知道错误发生在哪里。
首选的JSON.validate(json)
是返回结果 ok/error 和错误位置。像这样的东西:
var faultyJsonToParse = '{"string":"value", "boolean": true"}';
var result = JSON.validate(faultyJsonToParse);
if (result.ok == true) {
console.log('Good JSON, well done!');
} else {
console.log('The validator found a \'' + result.error + '\' of type \'' + result.errorType + '\' in your JSON near position ' + result.position);
}
上述想要的结果是:
The validator found a 'SyntaxError' of type 'Unexpected string' in your JSON near position 35.