Java 将JSON格式cookie添加到response-Servlet

Java 将JSON格式cookie添加到response-Servlet,java,json,servlets,cookies,gson,Java,Json,Servlets,Cookies,Gson,我正在尝试使用JSON格式的Javaservlet向响应添加cookie。我看到cookie是用额外的双引号和斜杠创建的。我已经尝试使用GSON库解析json字符串 HashMap<String, String> jsonMap = new HashMap<>(); jsonMap.put("name", "someName"); Cookie myJsonCookie = new Cookie("cookieName", new Gson().t

我正在尝试使用JSON格式的Javaservlet向响应添加cookie。我看到cookie是用额外的双引号和斜杠创建的。我已经尝试使用GSON库解析json字符串

HashMap<String, String> jsonMap = new HashMap<>();
        jsonMap.put("name", "someName");
    Cookie myJsonCookie = new Cookie("cookieName", new Gson().toJson(jsonMap));
        myJsonCookie.setHttpOnly(true);
        myJsonCookie.setSecure(true);
        myJsonCookie.setPath("/");
        myJsonCookie.setMaxAge(60*60);
        response.addCookie(myJsonCookie);
HashMap jsonMap=newhashmap();
jsonMap.put(“name”、“someName”);
Cookie myJsonCookie=newcookie(“cookieName”,new Gson().toJson(jsonMap));
myJsonCookie.setHttpOnly(true);
myJsonCookie.setSecure(true);
myJsonCookie.setPath(“/”);
myJsonCookie.setMaxAge(60*60);
addCookie(myJsonCookie);


如何避开引号和斜杠?

正如我使用Tomcat 7 app server时所说的那样。添加属性解决了这个问题。
org.apache.tomcat.util.http.ServerCookie.ALLOW_http_SEPARATORS_IN_V0=true

作为未来参考,标准方法是对cookie进行base64编码,但不进行填充-这样,如果切换应用服务器,则不必在该服务器中找到魔法标志。有关详细信息,请参阅。