Сопоставить контроллер rest в путь без контекста сервлета - PullRequest
1 голос
/ 18 октября 2019

У меня есть приложение весенней загрузки со следующим контекстным путем:

server.servlet.context-path:/api

Мне нужно написать контроллер покоя, который сопоставлен с http://localhost:8080/logout вместо http://localhost:8080/api/logout

Есть ли способ добиться этого? изменение значения «server.servelt.context-path» не является опцией.

это то, что я пытался и не получалось:

@GetMapping(value="../signout"){
public void logout(){
}

Ответы [ 2 ]

1 голос
/ 18 октября 2019

Неро, вы говорите, что не можете изменить значение «server.servlet.context-path». Могу поспорить, что вы говорите это, потому что вы не хотите нарушать API, но я думаю, что вы можете изменить это, не нарушая API. Установите значение context-path пустым, что разрешено. Затем в вашем приложении измените отображение «api», которое, как я полагаю, в настоящее время «/», на «api».

  1. Измените server.servlet.context-path:/api на server.servlet.context-path:/ или, возможно, server.servlet.context-path:(без косой черты). (Возможно, это значение по умолчанию, поэтому вы можете просто удалить эту запись.)

  2. Где-то в вашем приложении измените @RequestMapping("/") на @RequestMapping("/api").

Теперь у вас также может быть @GetMapping(value="/signout"), и у вас будут ресурсы http://localhost:8080/logout и http://localhost:8080/api.

Я не знаю, какие аннотации сопоставления вы используете, но, надеюсь, этодостаточно ясно.

0 голосов
/ 18 октября 2019

В этом приложении может быть невозможно выйти за пределы корневого контекста. Может быть, вы можете создать отдельное приложение службы Rest для этого конкретного URL и взять его оттуда.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...