【发布时间】:2018-02-08 20:56:12
【问题描述】:
我正在尝试使用 JSON 格式的 java servlet 将 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);
Following code is adding cookie as
如何转义引号和斜杠?
【问题讨论】:
-
为了将来参考,标准方法是对 cookie 进行 base64 编码,但没有填充 - 这样,如果您切换应用服务器,您就不必在该服务器中找到魔法标志。详情请见this question。
标签: java json servlets cookies gson