java – 在spring mvc中按名称获取cookie值
发布时间:2020-12-14 16:31:30 所属栏目:Java 来源:网络整理
导读:我正在开发一个 java spring mvc应用程序.我以这种方式在我的控制器的一个方法中设置了一个cookie: @RequestMapping(value = {"/news"},method = RequestMethod.GET)public ModelAndView news(Locale locale,Model model,HttpServletResponse response,Http
我正在开发一个
java spring mvc应用程序.我以这种方式在我的控制器的一个方法中设置了一个cookie:
@RequestMapping(value = {"/news"},method = RequestMethod.GET) public ModelAndView news(Locale locale,Model model,HttpServletResponse response,HttpServletRequest request) throws Exception { ... response.setHeader("Set-Cookie","test=value; Path=/"); ... modelAndView.setViewName("path/to/my/view"); return modelAndView; } 这是正常的,我可以在浏览器控制台中看到一个具有名称测试和值“value”的cookie.现在我想通过其他方法的名字获取cookie值.如何获得测试cookie的价值? 解决方法
最简单的方法是在带有@CookieValue注释的控制器中使用它:
@RequestMapping("/hello") public String hello(@CookieValue("foo") String fooCookie) { // ... } 否则,可以使用Spring org.springframework.web.util.WebUtils从servlet请求中获取它 WebUtils.getCookie(HttpServletRequest request,String cookieName) 顺便说一句,粘贴到问题中的代码可以被改进一些.而不是使用#setHeader(),这更优雅: response.addCookie(new Cookie("test","value")); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |