如何获取RequestMapping中编写的绝对URL?
下面给出的代码:
@RequestMapping("/user/{id}")
public User get(){
String url = "/user/{id}";
};
答案 0 :(得分:0)
根据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. */
}
}
希望这个答案对您有所帮助。