原因:java.lang.IllegalArgumentException:cookie值或属性中的控制字符

原因:java.lang.IllegalArgumentException:cookie值或属性中的控制字符,java,web,cookies,character,Java,Web,Cookies,Character,如何解决这个问题,这是我在堆栈溢出方面的第一个问题。我真的希望有人能给我一些建议来解决这个问题。关于未来的cookie,您的解决方案只是在cookie中设置值之前对其进行URL编码或Base64编码,然后在读取时对其进行URL解码或Base64解码 因此,在创建cookie时,请执行以下操作: Cookie cookie = new Cookie(name, URLEncoder.encode(value, "UTF-8")); Cookie cookie = new Cookie(name,


如何解决这个问题,这是我在堆栈溢出方面的第一个问题。我真的希望有人能给我一些建议来解决这个问题。

关于未来的cookie,您的解决方案只是在cookie中设置值之前对其进行URL编码或Base64编码,然后在读取时对其进行URL解码或Base64解码

因此,在创建cookie时,请执行以下操作:

Cookie cookie = new Cookie(name, URLEncoder.encode(value, "UTF-8"));
Cookie cookie = new Cookie(name, URLEncoder.encode(value, "UTF-8"));
// ...

版本0 cookie值在允许的字符中有限制。它只允许URL安全字符。其中包括字母数字字符
(a-z、a-z和0-9)
,以及少数词汇字符,包括
-
~
%
。版本0 cookie中的所有其他字符无效

你最好的选择是对这些字符进行URL编码。这样,URL中不允许的每个字符都将按百分比编码为此表单
%xx
,该表单作为cookie值有效

因此,在创建cookie时,请执行以下操作:

Cookie cookie = new Cookie(name, URLEncoder.encode(value, "UTF-8"));
Cookie cookie = new Cookie(name, URLEncoder.encode(value, "UTF-8"));
// ...
阅读cookie时,请执行以下操作:

String value = URLDecoder.decode(cookie.getValue(), "UTF-8");
// ...
请参阅此链接:


首先,请仔细阅读,请不要发布图片,发布您的代码。非常感谢。非常感谢。