HomeAway (vrbo.com) API-авторизация с помощью присяги - PullRequest
0 голосов
/ 17 октября 2018

Я пытаюсь использовать VRBO / HomeAway API для доступа к обзорам для одного объекта, для которого я создаю веб-сайт.Я хотел попрактиковаться с API и решил, что если я буду использовать API для обзоров, список обновится сам.

Я создаю веб-сайт с Angular, но пока я хотел бы протестировать API с помощьюПочтальон приложение.Инструкции по API можно найти здесь .

Я пытаюсь опубликовать на https://ws.homeaway.com/oauth/token свой токен в соответствии с инструкциями.Но мое замешательство исходит из шапки.Мне сказали использовать со «стандартным заголовком базовой аутентификации», который, как я полагаю, означает «Авторизация» (это единственный заголовок авторизации, который предоставляет Postman.

Однако в инструкциях API говорится, что это то, чтозаголовок должен выглядеть следующим образом:

Authorization: Basic NTVhODQ4NjItZmE0ZS0xMWU0LWEzMjItMTY5N2Y5MjVlYzdiOjg1MzBmNDZjLWZhNGUtMTFlNC1hMzIyLTE2OTdmOTI1ZWM3Yg==

Я предполагаю, что «базовый» не нужен. Я получаю ответ от API с обычным заголовком авторизации, поэтому я думаю, что авторизация работает нормально.

Теперь предполагается, что значение заголовка авторизации должно быть:

"where the credentials are a base-64 encoded string of your client's id and secret: '<clientId>:<clientSecret>'"

Итак, я подумал, что мне просто нужно объединить свой clientId с ":", за которым следует ny secret (Allиз которых я уже получил)

Однако,

Я получаю только это сообщение об ошибке:

{
    "message": "Invalid authorization. Please try again or contact support.",
    "errorCode": "BAD_AUTHORIZATION"
}

В инструкциях API упоминается:

Note: If you do not base-64 encode the client id:secret pair, the request will fail. Additionally, the client id and secret should never be hard coded into code that is provided to end users (mobile applications, etc).

Это то, что мне нужно сделать? Я прочитал, что заголовки автоматически кодируются.

Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 25 декабря 2018

Почтальон делает большую работу за вас.Когда вы выбираете Basic Auth в качестве типа авторизации, он объединяет имя пользователя и пароль, а base-64 автоматически его кодирует.

basic authorization parameters

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

generated authorization request header

Нажмите кнопку Отправить, чтобы отправить запрос, и вы должны получить ответс токеном на предъявителя, необходимым для перехода к следующему шагу процесса API.

API response with bearer token

...