1

想要将 Paypal 与我的移动 Web 应用程序集成。我尝试使用客户端 ID 和机密 ID 获取访问令牌,但无法获取访问令牌。

下面是我为检索访问令牌而进行的示例 Ajax 调用。

function getAccessToken(){
        $.ajax({
        url:"https://api.sandbox.paypal.com/v1/oauth2/token/",
        type:"POST",
        data : {"grant_type":"client_credentials"},
        beforeSend: function (request)
                {
                    request.setRequestHeader("Accept", "application/json");
                    request.setRequestHeader("Accept-Language", "en_US");
                    request.setRequestHeader("Authorization", "abc XXXXX:XXXXXXXXXXXXX");
                },
            success: function(data) {    
                alert(data);
            },
            error: function(e, messgae,type){
                alert("Error" + e +"          "+messgae+"         type         "+type);
            }
     });

我无法从服务器检索访问令牌。谁能告诉我如何使用 java 脚本将 Paypal 与我的移动 Web 应用程序集成?

4

2 回答 2

5

经过一系列尝试和失败后,我找到了正确的 AJAX 调用:

$.ajax({
        headers: {
             "Accept": "application/json",
             "Accept-Language": "en_US",
             "Authorization": "Basic "+btoa("**<Client ID>:<Secret>**")
        },
        url: "https://api.sandbox.paypal.com/v1/oauth2/token",
        type: "POST",
            data: "grant_type=client_credentials",
        complete: function(result) {
            alert(JSON.stringify(result));
        },
});

您需要将 Client ID:Secret 替换为您在开发者仪表板上找到的 ID,例如AxxhGDh:hudh-X-h8qi

于 2013-12-09T16:05:47.643 回答
0

上面的例子不起作用,下面对我有用:

var parameter = {
    "grant_type": "client_credentials",
    "username": "<username>",
    "password": "<password>"
}

$.ajax({
    headers: {
        "Accept": "application/json",
        "Accept-Language": "en_US",
        "Authorization": "Basic <your auth key>"
    },
    url: "https://api.sandbox.paypal.com/v1/oauth2/token",
    type: "POST",
    data: parameter,
    complete: function (result) {
        alert(JSON.stringify(result));
    },
})
于 2018-04-26T10:00:31.303 回答