Как сделать так, чтобы сервер Wiremock регистрировал файл, содержащий сопоставитель заглушки, используемый в ответе? [дуJAVA

Программисты JAVA общаются здесь
Anonymous
Как сделать так, чтобы сервер Wiremock регистрировал файл, содержащий сопоставитель заглушки, используемый в ответе? [ду

Сообщение Anonymous »

У меня есть сервер Wiremock в Java. Он содержит несколько файлов .json для возврата ответа на каждый запрос. Что-то вроде
file1.json

Код: Выделить всё

{
"mappings": [
{

"request": {
"method": "GET",
"urlPathPattern": "/cars/"
},
"response" { "jsonBody": {...}
file2.json

Код: Выделить всё

"mappings": [
{

"request": {
"method": "GET",
"urlPathPattern": "/other/car/"
},
"response" { "jsonBody": {...}
}
С десятками подобных запросов, папок и файлов.
Я хотел бы знать, если возможно, когда ответ обрабатывается и возвращается, чтобы записать что-то вроде:

Код: Выделить всё

"request matched file2.json"
или что-то подобное. Чтобы увидеть соответствие между выполненным запросом и найденным/сопоставленным файлом Wiremock для этого запроса.
Я знаю, что если запрос не соответствует ни одному совпадению, отображается ошибка и отображается «ближайшая найденная заглушка...».
Также в Интернете я обнаружил, что могу сделать расширение преобразователя

Код: Выделить всё

"implements ResponseDefinitionTransformerV2"
и затем используйте

Код: Выделить всё

public ResponseDefinition transform(ServeEvent serverEvent) {
...
log serverEvent.responsedefinition.bodyfilename
но это полезно только в том случае, если ответ-заглушка указывает на файл, а не в том случае, если файл-заглушка содержит тело json напрямую.
Также в serverEvent.stubmapping я не вижу ничего полезного.
Любые идеи. Или флаг уровня отладки Wiremock для отображения информации об отладке?
ОБНОВЛЕНИЕ от 14 января 2025 г.: я обнаружил, что могу получить uuid заглушки, которую Wiremock решил использовать для создания ответа (он находится в объекте serverEvent.stubmapping), и получить сопоставление с помощью веб-интерфейса API (/__admin/), но нет возможности связать его с json-файлом, создающим заглушку.
Также запуск Wiremock с уровнем журнала, установленным на отладку, бесполезен.
И мой вопрос не имеет ничего общего с «дубликатом ответа», то есть для Wiremock через Docker.

Подробнее здесь: https://stackoverflow.com/questions/798 ... sed-in-a-r

Вернуться в «JAVA»