Linkedin api.linkedin.com/v1/people начал возвращать 400 ошибка - PullRequest
0 голосов
/ 25 января 2019

У меня есть веб-приложение, которое годами работает нормально, используя api.linkedin.com/v1/people/~/shares.Код не был изменен.

Теперь все вызовы этого API возвращаются на 400.

См. Один пример:

url:https://api.linkedin.com/v1/people/~/shares?format=json&oauth_token=xxxxx

Request Method: POST

Body:

{  
   "content":{  
      "title":"text title",
      "submitted-url":"http://my-domain-url/resource",
      "submitted-image-url":"http://my-domain-url/image.jpg"
   },
   "comment":"text title",
   "visibility":{  
      "code":"anyone"
   }
}

Ответ:

Status Code: 400 
Body
{
  "errorCode": 0,
  "message": "Can not parse JSON share document.\nRequest body:\n\nError:\nnull",
  "requestId": "Y9RHPVP9GP",
  "status": 400,
  "timestamp": 1548417237616
}

Это фрагмент javascript для совершения вызова

IN.API.Raw("/people/~/shares?format=json")
          .method("POST")
          .body(body)
          .result(function (data) {
            $scope.linkedIn.shared = true;
            $scope.linkedIn.url = data.updateUrl;
            $('#successDialog').modal('toggle');
            $scope.addSharesCount(jobDetails.jobId);
          })

          .error(function (error) {
              $scope.error.body = 'error.message;
               $scope.$apply();
               $('#errorDialog').modal('show');
    }

Я нашелthis: https://engineering.linkedin.com/blog/2018/12/developer-program-updates

Говорит, что мы все должны перейти на новый API к началу марта.Это кажется мне слишком коротким.

Также кажется, что в / v1 api есть несовместимое изменение или ошибка.

Ответы [ 2 ]

0 голосов
/ 24 мая 2019

V1 сейчас на пенсии, поэтому вам нужно перейти на v2 https://docs.microsoft.com/en-us/linkedin/shared/integrations/people/profile-api?context=linkedin/consumer/context

0 голосов
/ 25 января 2019

400 http код ошибки означает «Неверный запрос» (если вы не знаете, что означает ваш http-код, вы можете использовать http.cat ), поэтому, вероятно, отсутствует User-Agent, попробуйте поставить один из реального браузера некоторые API отказываются, когда у клиента нет User-Agent / Bot User-Agent.

Вы должны указать это в заголовке запроса.

Пример User-Agent:

   Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:58.0) Gecko/20100101 Firefox/58.0

Хорошего дня программирования o /

...