我已经在Angular应用中实现了此API。问题是当我输入错误的送货地址时,API会引发错误:
未捕获的错误:处理错误时遇到错误 错误:请求发布www.sandbox.paypal.com/v1/payments/payment失败,出现400错误。相关ID:3b331f9eaafa4、3b331f9eaafa4
{ “ name”:“ VALIDATION_ERROR”, “细节”: [ { “ field”:“ city”, “ issue”:“值无效” }, { “ field”:“州”, “ issue”:“值无效” }, { “ field”:“ zip”, “ issue”:“值无效” } ], “ message”:“无效的请求-查看详细信息”, “ information_link”:“ developer.paypal.com/docs/api/payments/#errors”, “ debug_id”:“ 3b331f9eaafa4” }
如何解析错误以显示带有错误文本的警报?它不是JSON,所以我不知道如何解析它。
答案 0 :(得分:0)
使用正则表达式匹配JSON,然后使用JSON.parse
将其解析为JSON。完成后,您可以使用message
和details
字段,其中包含与错误有关的信息。
var jsonString = errmsg.match(/\{.*\}/gm);
var jsonObj = JSON.parse(jsonString);
希望这会有所帮助。
答案 1 :(得分:0)
这是解决方案:
let res = error.message.match(/{([\s\S]*?)^}/gm);
console.log( JSON.parse( res[0] ) )
这将提供一个可使用的JSON。