使用Parse.com云代码确认PayPal付款

时间:2014-09-21 22:46:48

标签: curl paypal parse-platform

为了确认付款,我需要一个access_token,它每8小时到期一次,因此在尝试验证付款之前,我需要使用云代码获取新的访问令牌。

我正在尝试使用httpRequest:

function requestAccessToken(response){
        Parse.Cloud.httpRequest({
            method: 'POST',
            url: 'https://api.paypal.com/v1/oauth2/token',
            headers: {
                'Content-Type': 'application/json',
                'Accept-Language' : 'en_US'
            },
            body: 'grant_type=client_credentials',
            success: function(httpResponse) {
                var res = JSON.parse(httpResponse.text);
                response.success(res.access_token);
            },
            error: function(httpResponse) {
                response.error('requestAccessToken failed with response code ' + httpResponse.status);
            }
        });
    }

执行以下curl(from docs):

curl -v https://api.sandbox.paypal.com/v1/oauth2/token \
  -H "Accept: application/json" \
  -H "Accept-Language: en_US" \
  -u "{client-ID}:{secret}" \
  -d "grant_type=client_credentials"

问题是我找不到将“{client-ID}:{secret}”添加到httpRequest的方法。

使用url: 'https://'+clientId+':'+secret+'@api.paypal.com/v1/oauth2/token'会产生500服务器响应。

任何想法如何获取访问令牌以验证付款?

1 个答案:

答案 0 :(得分:0)

您需要添加授权标题

      Authorization: Basic < {client-ID}:{secret}" encoded base64> (e.g. QWxhZGRpbjpvcGVuIHNlc2FtZQ==)