Paypal API - checkout.js - 解析响应错误

问题描述 投票:2回答:2

我在我的Angular应用程序上实现了这个API。问题是,当我输入错误的送货地址时,API会抛出错误:

未捕获错误:处理错误时遇到错误错误:请求发布www.sandbox.paypal.com/v1/payments/payment失败,出现400错误。相关id:3b331f9eaafa4,3b331f9eaafa4

{“name”:“VALIDATION_ERROR”,“details”:[{“field”:“city”,“issue”:“Value is invalid”},{“field”:“state”,“issue”:“Value is无效“},{”字段“:”zip“,”问题“:”值无效“}],”消息“:”无效请求 - 请参阅详细信息“,”information_link“:”developer.paypal.com/docs/ api / payments /#errors“,”debug_id“:”3b331f9eaafa4“}

如何解析错误以显示带有错误文本的警报?它不是JSON,所以我不知道如何解析它。

paypal express-checkout
2个回答
0
投票

这是解决方案:

let res = error.message.match(/{([\s\S]*?)^}/gm);
console.log( JSON.parse( res[0] ) )

这将使JSON可以使用。


0
投票

使用正则表达式匹配JSON,然后使用JSON.parse将其解析为JSON。完成后,您可以使用包含与错误相关的信息的messagedetails字段。

var jsonString = errmsg.match(/\{.*\}/gm);

var jsonObj = JSON.parse(jsonString);

希望这可以帮助。

© www.soinside.com 2019 - 2024. All rights reserved.