Внутренняя ошибка сервера 500 для всех запросов к Google Ads API - PullRequest
1 голос
/ 06 мая 2019

Вот мой код в Node JS.

 var bearerToken = 'Bearer '+ access_token;

 var options = {
                 url: 'https://googleads.googleapis.com/v1/customers/'+accountid+'/googleAds:search',
                 headers: {
                       'Authorization': bearerToken,
                       'Accept': 'application/json',
                       'Content-Type': 'application/json',
                       'login-customer-id': '123-456-7890',
                       'developer-token': 'XXX_XXXXXXXXXXX'
                     },
                     form: { 'query': 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id' }


                   };


                   request.post(options, function(err, response) {
                       console.log(response);
                   });

Я получаю сообщение об ошибке ниже

body: '{\n  "error": {\n    "code": 500,\n    "message": "Internal error encountered.",\n    "status": "INTERNAL"\n  }\n}\n' }

500 код ошибки означает, что ошибка от Google. Это тот случай или я что-то здесь не так делаю?

1 Ответ

0 голосов
/ 06 июня 2019

После того, как сломал голову несколькими итерациями. Наконец, я понял, что проблема была с developer-token. Мне пришлось сгенерировать новый developer-token и изменить form на json. Сейчас работает нормально.

Вот окончательный рабочий код

var bearerToken = 'Bearer '+ access_token;

var options = {
             url: 'https://googleads.googleapis.com/v1/customers/'+accountid+'/googleAds:search',
             headers: {
                   'Authorization': bearerToken,
                   'Accept': 'application/json',
                   'Content-Type': 'application/json',
                   'developer-token': 'XXX_XXXXXXXXXXX'
                 },
                 json: { 'query': 'SELECT campaign.id, campaign.name FROM campaign ORDER BY campaign.id' }


               };


               request.post(options, function(err, response) {
                   console.log(response);
               });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...