Wiremock захватывает тело ответа для последующего повторного использования

Я сталкиваюсь с конкретным вариантом использования при использовании автономного API Wiremock.

Я хотел бы иметь возможность повторно использовать тело ответа, сгенерированное путем заглушки для другого запроса (также заглушенного) в качестве модели контекста. Цель состоит в том, чтобы сохранить для сгенерированного идентификатора все данные ответа, что позволило бы мне снова обслуживать его, просто зная идентификатор, в частности, в методе получения (где нет тела запроса). Есть ли способ при определении заглушки ответа захватить сгенерированный ответ, чтобы сохранить его?

Или если у вас есть другая лучшая идея.

Можете ли вы уточнить вариант использования. Я сбит с толку, почему вы не хотите регенерировать один и тот же ответ и делать сопоставление запросов более общими, чтобы обеспечить динамическое сопоставление нескольких входных данных с одним сопоставлением.

A. Kootstra 11.04.2019 08:11

Например, у вас есть первый сгенерированный ответ из информации тела запроса. Ответ генерирует идентификатор, который указывает на данные запроса. Следующий запрос — это GET без тела, но с URL-адресом, соответствующим этому сгенерированному идентификатору. Я хочу вернуть тот же ответ предварительного просмотра, например, с измененными данными...

pi lak 11.04.2019 11:41

Для меня это звучит так, как будто вы хотите иметь поведение с сохранением состояния. WireMock имеет некоторую поддержку для этого. Это объясняется в документация, в зависимости от вашего варианта использования этого может быть достаточно. Вы его уже посмотрели?

A. Kootstra 12.04.2019 08:07
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
2
3
887
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Наконец, я решил проблему, используя перехватчик okhttp (который зависит от вашего клиентского решения).

В перехватчике я сохраняю данные каждого ответа (например, сгенерированный идентификатор) и устанавливаю их в заголовках каждого следующего запроса, когда они совпадают с частью сохраненного ответа.

добавление их в заголовки запроса позволяет мне получить к ним доступ, например, в файле шаблона json

Другие вопросы по теме