1

私はこれを機能させようとしています 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.

4

2 に答える 2