Токен JWT в заголовке почтальона
Я тестирую реализацию безопасности на основе токенов JWT на основе следующего статьи. Я успешно получил маркер от тестового сервера. Я не могу понять, как заставить клиентскую программу Chrome POSTMAN REST отправить токен в заголовке.

мои вопросы следующие:
1) я использую правильное имя заголовка и/или интерфейс почтальона?
2) Нужно ли мне на базе 64 кодировать токен? Я думал Я могу просто отправить жетон обратно.
8 ответов:
для имени заголовка запроса просто используйте авторизацию. Поместите носителя перед жетоном. Я просто попробовал его и он работает для меня.
авторизация: носитель TOKEN_STRING
каждая часть JWT является значением в кодировке base64url.
я добавляю к этому вопросу немного интересный совет, который может помочь вам, ребята, тестирование JWT API.
Это очень просто на самом деле.
когда вы войдете в свой Api (конечная точка входа), вы сразу же получите свой токен, и, как сказал @mick-cullen, вам придется использовать JWT в своем заголовке Как:
Authorization: Bearer TOKEN_STRINGТеперь, если вы хотите автоматизировать или просто сделать вашу жизнь проще, ваши тесты вы можете сохранить токен как глобальный, который вы можете вызвать на всех других конечные точки как:
Authorization: Bearer {{jwt_token}}На Почтальона: Затем сделайте глобальную переменную в postman как jwt_token = TOKEN_STRING.
на конечной точке входа : Чтобы сделать его полезным, добавьте в начале вкладки тесты добавить:
var data = JSON.parse(responseBody); postman.clearGlobalVariable("jwt_token"); postman.setGlobalVariable("jwt_token", data.jwt_token);Я предполагаю, что ваш api возвращает токен в виде json на ответ как: {"jwt_token": "TOKEN_STRING"}, может быть какая-то вариация.
в первой строке вы добавляете ответ на данные varibale. Очистите свой глобальный И присвоить значение.
Итак, теперь у вас есть свой токен в глобальной переменной, что упрощает использование Authorization: Bearer {{jwt_token}} на всех ваших конечных точках.
надеюсь, что этот совет поможет.
EDIT
Что-то читатьо тестах на почтальона:тестовые примеры
Командная Строка: Ньюман
Ницца сообщение в блоге: master api Test automation
у меня была такая же проблема в
Flaskи после попытки первые 2 решения, которые являются одинаковыми (Authorization: Bearer <token>), и получаю это:{ "description": "Unsupported authorization type", "error": "Invalid JWT header", "status_code": 401 }мне удалось, наконец, решить ее можно с помощью:
Authorization: jwt <token>думал, что это может сэкономить время для людей, которые испытывают то же самое.
Почему-то почтальон у меня не работал. Мне пришлось использовать расширение chrome под названием RESTED, которое действительно работало.
Я сделал так, как упоминал моплин .Но в моем случае сервис отправляет JWT в заголовках ответа, как значение под ключом "авторизация".
Authorization →Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJpbWFsIiwiZXhwIjoxNDk4OTIwOTEyfQ.dYEbf4x5TGr_kTtwywKPI2S-xYhsp5RIIBdOa_wl9soqaFkUUKfy73kaMAv_c-6cxTAqBwtskOfr-Gm3QI0gpQто ,что я сделал, это сделать глобальную переменную в postman as
ключ - >jwt
значение->бла-блав запросе на вход->вкладка тесты, добавить
postman.clearGlobalVariable("jwt"); postman.setGlobalVariable("jwt", postman.getResponseHeader("Authorization"));в других запросах выберите вкладку заголовки и дайте
ключ->авторизация
value - > {{jwt}}
для людей, которые используют плагин WordPress Advanced Access Manager открыть проверки подлинности проверки подлинности.
поле заголовка должно поставить проверка подлинности вместо авторизация
ААМ упомянул об этом внутри их документация,
внимание! ААМ не использует стандартный заголовок авторизации как он пропущен большинство сервер Apache. ...
надеюсь, что это поможет кому-то! Спасибо за другие ответы помогли мне тоже много!!





Comments