Я пытаюсь предоставить контракт для службы HATEOAS, используя решение spring-cloud-contract. Однако я застрял со ссылками на ресурсы HATEOAS, поскольку вы можете запустить заглушку на любом случайном порту, вопрос в том, как включить абсолютную ссылку, возвращаемую ответом на контракт, а затем используемую потребителем?
Есть ли способ ввести текущий порт заглушки сервера в отображение?
Спасибо заранее
Лучшим решением для использования контракта с HATEOAS было бы использование решения Spring RestDocs (вы можете проверить ветку restdocs
образца https://github.com/olivergierke/spring-restbucks#documentation--client-stub-generation Оливера RestBucks). Мы все еще работаем над оптимизацией пользовательского интерфейса, поэтому любые отзывы приветствуются.
Что касается Is there any way to inject current stub server port into mapping?
, ну, мне в голову особо ничего не приходит. Я думаю, вам придется жестко запрограммировать порт.
Наконец, я переключился на относительные ссылки URI для контрактных тестов, так как ничего не мог придумать лучше. В любом случае спасибо за помощь.
Я пытаюсь сделать то же самое и наткнулся на ваш вопрос, не могли бы вы дать мне пример того, что вы имеете в виду, относительные ссылки URI для тестов контракта? Я имею в виду, как вы структурировали свой файл groovy для этого?