java - Cookie 值中存在无效字符 [59]

标签 java tomcat cookies

所以我看到了其他关于此的问题,但没有一个能够解决我的问题。

我得到一个

org.apache.jasper.JasperException: java.lang.IllegalArgumentException: An invalid character [59] was present in the Cookie value

错误。我正在使用 DeviceLookupClient.jar,它在 tomcat 拒绝的某处添加了一个 cookie。

因此,当我在一切成功后在 weblogic 中运行它时,我得到了这个 cookie(来自网络选项卡):

WurflCloud_Client   
value   "{\"capabilities\":{\"is_smart…383,\"id\":\"firefox_54_0\"}"
expires "2017-08-17T16:03:03.000Z"

在 tomcat 中运行相同的代码,但在创建 cookie 之前就失败了。我相信 [59] 字符是一个分号,但我没有在其中看到任何分号。如果不允许该 cookie 中的某些内容,那么有没有办法允许它,而不是操纵我正在使用的库?

最佳答案

如果你像这样编码给定的值可能会解决:

URLEncoder.encode(""{\"capabilities\":{\"is_smart…383,\"id\":\"firefox_54_0\"}"","UTF-8");

关于java - Cookie 值中存在无效字符 [59],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45718387/

相关文章:

java - hibernate @Formula 与 CAST

java - 如何将 Java 字符串传递给 JSP 页面中的 JavaScript 函数

tomcat - 我如何在 servlet 之间共享 session 状态?

java - 集群配置中的 Hibernate 搜索?

r - 如何通过 Rcurl 使用 cookie 下载文件

javascript - Session.cookies 为空而 JavaScript document.cookie 不是

java - 将响应编码为 Gzip 导致无法在浏览器中设置 Cookie

java - 我可以 Autowiring 命名记录器吗?

java - 搜索主类的图像?

tomcat - 无法在 Windows 2012 上将 tomcat 7 安装为服务