Ошибка при запросе токена доступа из Vend API для тестового приложения

#oauth-2.0 #httprequest

#oauth-2.0 #httprequest

Вопрос:

Я пытаюсь получить токен доступа для тестового приложения, используя 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_kLlcq7VYZHQeAhoK7Jamp;domain_prefix=samplepsyirf01amp;user_id=0adfd74a-1555-11e9-fa42-466c8a5b0ef5amp;state=foostateamp;signature=2b575c8e2675845305d59040cef6e3f33b820839d8e8d4d073ebe2ac6167dca5

Документы Vend API:https://docs.vendhq.com/reference#section-oauth-2-0

Ответ №1:

Я попытался использовать «Массовое редактирование» в Postman, которое выявило пробел в конце ключа «grant_type». Удаление пробела привело к успешному ответу токена.