【发布时间】:2013-03-12 22:58:29
【问题描述】:
我正在沙箱中工作,并使用带有 CreditCard 对象的 PayPal REST .net SDK 方法 Payment.Create。当所有参数都有效并使用来自https://developer.paypal.com/webapps/developer/docs/integration/direct/accept-credit-cards/ 的测试CC 编号时,该方法会返回Payment 对象,一切正常。
但是,当参数无效时,例如过去的到期日期或沙盒无法识别的 CC 编号,则不会返回 Payment 对象。相反,该方法抛出异常:“HttpConnection Execute 中的异常:无效的 HTTP 响应远程服务器返回错误:(400)错误请求”,但没有进一步解释。
当我在 cURL 中执行相同的请求时,除了“400 Bad Request”之外,我还会收到 JSON 响应。这包括更有用的消息,例如“VALIDATION_ERROR”和“无效过期(不能是过去)”。
我的问题:有没有办法从 SDK 中获取这些消息?
我尝试过的:
- 贝宝文档:https://developer.paypal.com/webapps/developer/docs/api/#errors 该文档提到,如果出现错误,它们会在响应正文中返回详细信息。不幸的是,它没有提供有关 SDK 是否可以访问这些内容的线索。
- 各种 Google 和 SO 搜索。
- SDK 提供的 PizzaApp 示例代码没有任何异常处理或进一步深入了解此问题的方式。
- 我在 SDK 中看到一个 PayPalException 对象,但没有找到任何指示它应该如何使用或者它是否与此问题相关的任何内容。
非常感谢所有帮助。
【问题讨论】:
标签: .net rest sdk paypal paypal-sandbox