Spring MVC的Cookie问题

时间:2013-08-19 21:50:19

标签: java spring session cookies

我试图使用@Cookie获取Cookie值。但是如果cookie值为null,我会得到400错误。怎么了? 这是我的控制者:

    public String listContacts(Map<String, Object> map,
            HttpServletResponse response, @CookieValue("flag") String flag) {



        response.addCookie(new Cookie("flag", "In use"));
...

1 个答案:

答案 0 :(得分:7)

尝试在required = false注释中设置@CookieValue

public String listContacts(Map<String, Object> map,
      HttpServletResponse response, @CookieValue(value = "flag", required = false) String flag) {

默认情况下,spring期望cookie标头存在并抛出异常,否则:

  

默认值为true,导致在请求中缺少标头时抛出异常。如果您在缺少标题时更喜欢null,请将其切换为false。

     

或者,提供defaultValue,隐式将此标志设置为false。