为啥发布到 PayPal 沙盒 API 对我不起作用?
Posted
技术标签:
【中文标题】为啥发布到 PayPal 沙盒 API 对我不起作用?【英文标题】:Why posting to PayPal sandbox API not working for me?为什么发布到 PayPal 沙盒 API 对我不起作用? 【发布时间】:2019-03-12 08:35:26 【问题描述】:我发布(带有合适的Authorization:
标头)到https://api.sandbox.paypal.com/v1/payments/payment
"intent": "sale", "payer": "payment_method": "paypal", "transactions": ["amount": 10.0, "currency": "USD", "details": "subtotal": 10.0, "shipping": 0.0, "tax": 0.0, "description": "Item 1"], "redirect_urls": "return_url": "https://example.com", "cancel_url": "https://example.com"
并得到回报
"name":"MALFORMED_REQUEST","message":"Incoming JSON request does not map to API request","information_link":"https://developer.paypal.com/webapps/developer/docs/api/#MALFORMED_REQUEST","debug_id":"815ed32bcd78e"
为什么会出错?我的错误是什么?
【问题讨论】:
【参考方案1】:请查看贝宝documentation
请参阅右侧的示例。 amount
应该是一个对象 - currency
和 details
需要是 amount
的属性,而且您缺少必需的 total
属性
重做的 JSON
"intent":"sale",
"payer":
"payment_method":"paypal"
,
"transactions":[
"amount":
"total":"10.00",
"currency":"USD",
"details":
"subtotal":"10.00",
"shipping":"0.00",
"tax":"0.00"
,
"description":"Item 1"
],
"redirect_urls":
"return_url":"https://example.com",
"cancel_url":"https://example.com"
在指定“价格数字”(总计、小计、...)时请小心,它们必须是字符串并遵循十进制数字的规则
【讨论】:
【参考方案2】:问题已编辑,此答案不再相关。
【讨论】:
JSON 带有双引号。我错误地提出了我的问题。我编辑了这个问题。请删除您的答案,因为它回答了错误的先前版本的问题以上是关于为啥发布到 PayPal 沙盒 API 对我不起作用?的主要内容,如果未能解决你的问题,请参考以下文章
为啥“Google Maps”一书中的 Google Maps Directions API 示例对我不起作用?
为啥 setLandingPageType("billing") 在沙盒中工作,但在 PAYPAL PHP REST API SDK WebProfile 中的实时版本中不工作