Я пытаюсь получить токен доступа для тестового приложения с помощью Vend API, отправив набор параметров в теле запроса POST типа «application / x-www-form-urlencoded». Я уже получил код авторизации, но продолжаю получать сообщение об ошибке. Я использую Postman для отправки запроса, и похоже, что Vend API использует OAuth2.
Ответ - 400 Плохой запрос:
{
"error": "invalid_request",
"error_description": "The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed. Check the \"grant_type\" parameter."
}
Похоже, ошибка указывает на то, что проблема в параметре grant_type, я пытался присвоить ему другие значения, такие как код авторизации и URI перенаправления, но безрезультатно. Теперь я подозреваю, что проблема в другом месте.
URL-адрес POST-запроса:
https://samplepsyirf01.vendhq.com/api/1.0/token
Параметры запроса POST:
code: KWDZNSo67gnf82PHa805k_kLlcq7VYZHQeAhoK7J
client_id: AdP6KYWqPjM7WbkDnNafoJ5piI6GECRa
client_secret: {CLIENT SECRET}
grant_type: authorization_code
redirect_uri: https://www.google.com/
Я использовал домашнюю страницу google в качестве фиктивного URI перенаправления, поскольку на данный момент у нас нет рабочих приложений Vend. Я не уверен, оказывает ли это какое-либо влияние на проблему.
Код авторизации:
https://www.google.com/?code=KWDZNSo67gnf82PHa805k_kLlcq7VYZHQeAhoK7J&domain_prefix=samplepsyirf01&user_id=0adfd74a-1555-11e9-fa42-466c8a5b0ef5&state=foostate&signature=2b575c8e2675845305d59040cef6e3f33b820839d8e8d4d073ebe2ac6167dca5
Документы Vend API: https://docs.vendhq.com/reference#section-oauth-2-0