Почему я получаю код 404 от PayPal при попытке прочитать прошлые транзакции - PullRequest
0 голосов
/ 21 июня 2020

Я пытаюсь прочитать свои прошлые транзакции. Я уже сделал это с помощью инструмента curl, но я не могу заставить его работать в nodeJS. Я пытаюсь это сделать с помощью api запроса. Получение токена от PayPal работает нормально. Просто не могу понять, как это сделать

curl -v -X GET https://api.paypal.com/v1/reporting/transactions?start_date=2020-05-20T01:01:01-00:00&end_date=2020-06-19T01:01:01-00:00 \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer access-token"

в NodeJS в настоящее время у меня есть это. Может кто-нибудь помочь мне разобраться в этом, пожалуйста?

var request = require('request');

let token;

request.post({
    uri: "https://api.paypal.com/v1/oauth2/token",
    headers: {
        "Accept": "application/json",
        "Accept-Language": "en_US",
        "content-type": "application/x-www-form-urlencoded"
    },
    auth: {
        'user': client_id,
        'pass': secret,
    },
    form: {
        "grant_type": "client_credentials"
    }
}, function (error, response, body) {
    let resp = JSON.parse(body);
    token = resp.access_token;
    console.log(token)
    if (error)
        console.log(error)

    getTransactions();
});


function getTransactions() {
    if (!token) {
        console.error("Could not get token");
        return;
    }


    request.post({
        uri: "https://api.paypal.com/v1/reporting/transactions?start_date=2020-05-20T01:01:01-00:00&end_date=2020-06-19T01:01:01-00:00",
        headers: {
            "content-type": "application/json"
        },
        auth: {
            bearer: token,
        }
    }, function (error, response, body) {
        console.log(body);
        console.log(error)
        console.log(JSON.stringify(response))

    });
}

Ошибка:

"statusCode":404,"body":"","headers":{"content-length":"0",
"connection":"close","date":"Sun, 21 Jun 2020 00:35:15 GMT",
"cache-control":"max-age=0, no-cache, no-store, must-revalidate",
"paypal-debug-id":"207f5d4c9341",
"strict-transport-security":"max-age=31536000; includeSubDomains"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,
"host":"api.paypal.com","port":443,"hostname":"api.paypal.com",
"hash":null,
"search":"?start_date=2020-05-20T01:01:01-00:00&end_date=2020-06-19T01:01:01-00:00",
"query":"start_date=2020-05-20T01:01:01-00:00&end_date=2020-06-19T01:01:01-00:00",
"pathname":"/v1/reporting/transactions",
"path":"/v1/reporting/transactions?start_date=2020-05-20T01:01:01-00:00&end_date=2020-06-19T01:01:01-00:00",
"href":"https://api.paypal.com/v1/reporting/transactions?start_date=2020-05-20T01:01:01-00:00&end_date=2020-06-19T01:01:01-00:00"},
"method":"POST","headers":{"Accept":"application/json",
"Accept-Language":"en_US","content-type":"application/x-www-form-urlencoded",
"authorization":"Bearer accesstoken_is_my_little_secret",
"content-length":0}}}
        index.js:38
...