README.md

Тестовое задание

Код контроллера

Код, в котором реализован требуемый функционал, находится в com.dpisarenko.JwtModifierController.modifyJwt.

Ручной тест

Шаг 1

Создать ключ и токен авторизации с помощью com.dpisarenko.KeyGenerator. Если запустить этот класс, то в консоль будет выведено то и другое.

2023-05-01 14:10:23.497 [main] INFO  com.dpisarenko.KeyGenerator - JWT token: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0In0.P8sL96axfw2JhTl2FIiRqVL2HzQhtc9jNNHrBmEHSDQ
2023-05-01 14:10:23.515 [main] INFO  com.dpisarenko.KeyGenerator - Private Key: j1ptvqaidgl5loIaIQrk7eNkWL7qIXcBAD5ptL7+70k=

Шаг 2

Приватный ключ из шага 1 занести в secret-key в application.yaml.

Шаг 3

Запустить приложение com.dpisarenko.Application.main.

Шаг 4

В Постмане импортировать коллекцию 2023-04-26-test-project.postman_collection.json.

Шаг 5

В Постмане в заголовке Authorization проставить значение JWT token из шага 1.

Шаг 6

Выполнить запрос в Постмане, либо аналогичный запрос curl:

curl --location --request POST 'http://localhost:8080/modify-jwt?newExpirationDate=2023-05-01' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJ0ZXN0In0.P8sL96axfw2JhTl2FIiRqVL2HzQhtc9jNNHrBmEHSDQ'

Ожидаемый результат: Приложение возвращает статус-код 200 и нечто, похожее на токен.

Как проверить, что приложение действительно изменяет токен?

См. автоматический тест com.dpisarenko.JwtModifierControllerTokenModificationTest.

Конвейеры
0 успешных
0 с ошибкой