Как получить оригинальный путь URL-адреса в WebFlux ServerHttpRequest - PullRequest
1 голос
/ 03 ноября 2019

Как получить абсолютный URL, как написано в RequestMapping?

Код, указанный ниже:

@RequestMapping("/user/{id}") public User get(){ String url = "/user/{id}"; };

1 Ответ

0 голосов
/ 03 ноября 2019

Согласно Spring Docs - ServerHttpRequest :

getPath():

Возвращает объект RequestPath, который включает context path + path в пределах частейсегменты приложения и пути.

Согласно Spring Docs - RequestPath :

pathWithinApplication():

Часть пути запросапосле контекстного пути. Это возвращает PathContainer объект.

Согласно Spring Docs - PathContainer :

value():

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

Измените код так:

@Controller
public class ExampleController {

  @RequestMapping("/user/{id}")
  public User get(ServerHttpRequest request) {
    String url = request.getPath().pathWithinApplication().value();
    /* if this is not giving you desired result, then try with subPath() method. See docs for info. */ 
  }  
}

Надеюсь, этот ответ вам поможет.

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