REST API cURL Token - Paylocity - PullRequest
       3

REST API cURL Token - Paylocity

0 голосов
/ 03 октября 2019

Это должно быть очень просто, но на всю жизнь я не могу сформировать свой запрос cURL, чтобы Paylocity его принял. https://www.paylocity.com/integrations/apis/

Я продолжаю получать HTTP / 1.1 400 Bad Request с ответом json {"error": "invalid_client"}, который, как я считаю, указывает на то, что отправляемые мной данные не отформатированы должным образом. Если я связываюсь с данными, я могу получить разные коды ответов. В этом случае я просто пытаюсь получить токен на предъявителя.

curl  -v https://apisandbox.paylocity.com/IdentityServer/connect/token \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Authorization:Basic <base64 encoded  clientid:clientsecret>' \
-d  'grant_type = client_credentials&scope = WebLinkAPI'

Что-то явно не так с вышеприведенным?

1 Ответ

0 голосов
/ 03 октября 2019

Наконец-то нашел ответ благодаря почтальону, скомпилированному для Windows (к вашему сведению, для нас почтальон в Windows дает другой вывод, чем почтальон в Linux). Когда почтальон отправляет запрос, он НЕ использует заголовок аутентификации base64, как описано в документации Paylocity. Вместо этого он помещает client_id и client_secret в тело. Кроме того, почтальон URL будет кодировать id и секретные строки.

т.е. "==" становится "% 3D% 3D", "+" становится "% 2B", а "/" становится "% 2F"

Кроме того, использование песочницы API не работало. Мы также должны были пройти аутентификацию на рабочем сервере.

curl -X POST -i \
-H 'Content-Type: application/x-www-form-urlencoded' \
-d 'grant_type=client_credentials&scope=WebLinkAPI&client_id=<client ID>&client_secret=<client secret>' \
https://api.paylocity.com/IdentityServer/connect/token
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...