Sam*_*Sam 6 java cookies servlets jetty
我试图在Servlet响应中设置一个值未知的cookie#4?Wn5pZ1JwQnlLEGRJAgB4WQU%3D.
但是当我在浏览器中设置cookie时,会返回带有引号的内容,如下所示:
"未知#4?Wn5pZ1JwQnlLEGRJAgB4WQU%3D".
为什么会这样?我们使用Jetty作为应用程序服务器.
我会把我写的代码
String cookieValue = "unkown#4?Wn5pZ1JwQnlLEGRJAgB4WQU%3D";
Cookie zedoCookie = new Cookie("cookiename", cookieValue);
zedoCookie.setMaxAge(31536000); // this is one year duration.
zedoCookie.setDomain("somedomain.com");
zedoCookie.setPath("/");
response.addCookie(zedoCookie);
Run Code Online (Sandbox Code Playgroud)
有人可以对此有所了解吗?
我已经看过了这个.但它似乎没有解决我的问题.
好像码头8(或更早)把下面的字符作为饼干不允许的:"\\n\r\t\f\b%+ ;=
(HttpFields - > __COOKIE_DELIM
).如果其中一个字符包含在cookie的值中,则该值将用HTTP-Header中的双引号括起来.URL-Encoding没有解决问题,因为那时你仍然会有%
角色.对我来说,这似乎是一个错误.我向Jetty邮件列表发了一个问题.邮件列表上还有另一篇文章,解释了为什么在Jetty版本9中引发cookie版本.
归档时间: |
|
查看次数: |
5400 次 |
最近记录: |