我试图让这个工作https://developer.paypal.com/webapps/developer/docs/integration/direct/make-your-first-call/ 使用 Java + Jersey 应用程序。好像我在 POST 参数中遗漏了一些东西。
public String getPaypalToken() {
Client client = Client.create();
WebResource webResource = client.resource("https://api.sandbox.paypal.com/v1/oauth2/token");
MultivaluedMap<String, String> queryParams = new MultivaluedMapImpl();
queryParams.add("username", CLIENT_ID + ":" + SECRET );
queryParams.add("grant_type", "client_credentials");
ClientResponse response = webResource.accept("application/json").acceptLanguage("en_US").type("application/x-www-form-urlencoded").post(ClientResponse.class, queryParams);
return response.toString();
}
使用我得到的以前的代码:POST https://api.sandbox.paypal.com/v1/oauth2/token返回了 401 Unauthorized 的响应状态。
这个 CURL 命令行选项可以正常工作:
curl -X POST https://api.sandbox.paypal.com/v1/oauth2/token -H "Accept: application/json" -H "Accept-Language: en_US" -u "EOJ2S-Z6OoN_le_KS1d75wsZ6y0SFdVsY9183IvxFyZp:EClusMEUk8e9ihI7ZdVLF5cZ6y0SFdVsY9183IvxFyZp" -d "grant_type=client_credentials"
任何建议将不胜感激。J。