【发布时间】:2017-03-06 19:08:40
【问题描述】:
我在使用 Sandbox 中的 json 有效负载使用 Java 代码创建贝宝付款时收到 Internal Server Error(500)。
我是用 json 做的:
{
"intent": "sale",
"redirect_urls":
{
"return_url": "somelink",
"cancel_url": "somelink"
},
"payer":
{
"payment_method": "paypal"
},
"transactions": [
{
"amount":
{
"total": "17",
"currency": "EUR"
},
"description": "This is payment tran."
}]
}
我尝试使用邮递员完成相同的工作,我可以做到。事实上,我使用邮递员完成了整个付款交易(批准和执行)
我正在使用 Bearer 传递正确的访问令牌。
HttpPost paymentPost = new HttpPost("api.sandbox.paypal.com/v1/payments/payment");
paymentPost.setHeader(HttpHeaders.AUTHORIZATION, pt.getTokenType() + " " + pt.getAccessToken());
List<NameValuePair> nvPairs = new ArrayList<NameValuePair>(4);
nvPairs.add(new BasicNameValuePair("content-type", "application/json")); nvPairs.add(new BasicNameValuePair("Accept", "application/json"));
paymentPost.setEntity(new UrlEncodedFormEntity(nvPairs));
【问题讨论】:
-
您是否设置了正确的内容类型标头。 Content-Type:application/json?
-
嗨 Nitish 我正在使用以下代码 HttpPost paymentPost = new HttpPost("api.sandbox.paypal.com/v1/payments/payment"); paymentPost.setHeader(HttpHeaders.AUTHORIZATION, pt.getTokenType() + " " + pt.getAccessToken()) ; List
nvPairs = new ArrayList (4); nvPairs.add(new BasicNameValuePair("content-type", "application/json")); nvPairs.add(new BasicNameValuePair("Accept", "application /json")); paymentPost.setEntity(new UrlEncodedFormEntity(nvPairs));
标签: java json paypal paypal-sandbox