Тип авторизации Bearer Token на Postman

Я пытаюсь протестировать несколько конечных точек с помощью Postman.

Для всех конечных точек требуется токен, который можно получить при входе в систему.

Итак, я сделал это:

Запрос # 1

введите здесь описание изображения

После успешного входа в систему у меня есть доступ к токену из ответа, затем я сохраняю этот токен в своей глобальной переменной.

let token = pm.response.json().location
console.log('Token : ', token.split("?token=")[1]);
pm.globals.set("token", token)

Мне нужно использовать этот токен в качестве токена носителя типа авторизации для моего запроса №2.

введите здесь pastedescription

Я могу скопировать и вставить это в поле токена, но я старался не делать этого вручную, есть ли способ сделать это автоматически, чтобы я мог последовательно выполнять эти 2 запроса?


person cyb3rZ    schedule 23.08.2018    source источник
comment
Вы устанавливаете токен как глобальную переменную, верно? Разве нельзя просто использовать Bearer {{token}} в заголовке Auth во втором запросе? Этот ввод токена создает только тот же заголовок.   -  person Danny Dainton    schedule 24.08.2018
comment
ох умно, я не думал об этом.   -  person cyb3rZ    schedule 24.08.2018


Ответы (2)


Сначала создайте среду (верхний правый угол почтальона - изображение ниже). Это не обязательный шаг, я предлагаю вам сделать это для лучшей обработки переменных.

введите описание изображения здесь

Я изменил скрипт под ваши нужды

var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("ID", jsonData.Location.split("?token=")[1]);

Теперь это экспортирует значение токена (снимок экрана ниже).

введите описание изображения здесь

Все, что вам нужно сделать, это вызвать переменную в запросе №2.

введите описание изображения здесь

Таким образом, вам не нужно вручную копировать, вставлять в запрос №2 каждый раз

person Wilfred Clement    schedule 24.08.2018
comment
Итак, в основном мой комментарий;) Вам не нужно создавать файл среды, поскольку он уже устанавливается как глобальная переменная. Я также предлагаю отказаться от синтаксиса старого стиля и использовать pm. * api. - person Danny Dainton; 24.08.2018
comment
Я все еще использую расширение chrome, поэтому синтаксис почтальона, а также причина для среды в том, что в моем почтальоне у меня есть 2 API, которые генерируют токен, и я должен использовать ту же переменную (требование проекта), поэтому я сопоставляю ее с разными средами - person Wilfred Clement; 24.08.2018
comment
Я бы перешел на автономную версию Postman, расширение chrome больше даже активно не работает. Теперь это основная версия собственного приложения. - person Danny Dainton; 24.08.2018

НЕТ, до сих пор их нет. Это нужно сделать вручную, если вы хотите получить полное значение, иначе вы можете сохранить его в переменной и использовать эту переменную непосредственно для токена.

person Harish Rajora    schedule 23.08.2018