Get Referer URL in Spring MVC

后端 未结 2 1800
星月不相逢
星月不相逢 2021-02-02 07:36

How can I get the referer URL in Spring MVC Controller?

相关标签:
2条回答
  • 2021-02-02 08:06

    It's available as HTTP request header with the name referer (yes, with the misspelling which should have been referrer).

    String referrer = request.getHeader("referer");
    // ...
    

    Here the request is the HttpServletRequest which is available in Spring beans in several ways, among others by an @AutoWired.

    Please keep in mind that this is a client-controlled value which can easily be spoofed/omitted by the client.

    0 讨论(0)
  • 2021-02-02 08:13

    In Spring MVC 3 you can get it from request, as @BalusC already said:

    public ModelAndView doSomething(final HttpServletRequest request) {
        final String referer = request.getHeader("referer");
        ...
    }
    

    but there also exists special annotation @RequestHeader which allow to simplify your code to

    public ModelAndView doSomething(@RequestHeader(value = "referer", required = false) final String referer) {
        ...
    }
    
    0 讨论(0)
提交回复
热议问题