Как остановить встроенную загрузку при добавлении косой черты - PullRequest
0 голосов
/ 06 февраля 2019

Когда я вызываю контекстный корень моего приложения весенней загрузки " localhost: 8080 / api / Players ", который отображается в методе RestController аннотацией @GetMapping (path = {"/", ""}), всегда перенаправлять (httpstatus: 307 Temporary redirect) на " localhost: 8080 / api / Players / ", добавляя косую черту в конце.

Мой контекст приложения -root действительно / api / Players , как определено в файле spring-boot application.properties ( server.servlet.context-path = / api / Players )

Iпробовал с Embedded-Tomcat, и он работает правильно, установив свойство server.tomcat.redirect-context-root = false

Есть ли способ настроить undertow для работы как Tomcat?

1 Ответ

0 голосов
/ 06 февраля 2019

Немного вглядываясь в исходный код для получения, похоже, что соответствующий код находится здесь в ServletInitialHandler.java, который выдаст код состояния перенаправления 307 в случае, если запрос является запросом на обновление... если только запрос не является запросом на обновление HTTP 2.Похоже, это не настраивается сервером, хотя есть некоторая попытка избежать перенаправления в зависимости от того, что делает клиент.

Возможно, стоит посмотреть на ваши HTTP-запросы, лучше понять, если ваш HTTP-клиентфактически делает запрос на обновление, а затем рассмотрит либо принятие этого факта, либо изменение клиента для выполнения запроса другого типа (возможно, заставив его отправить заголовок запроса на обновление HTTP2).

...