【java】UT000173: An invalid control character [230] was present in the cookie value or attribute

模块接口报500错误

问题

Cookie的值是非法的,这样是不可以的。

2023-10-17T16:37:26.239+08:00 2023-10-17 16:37:26.238 ERROR 1 --- [  XNIO-1 task-2] io.undertow.request                      : UT005023: Exception handling request to /biz/batchSave
2023-10-17T16:37:26.239+08:00 
2023-10-17T16:37:26.239+08:00 java.lang.IllegalArgumentException: UT000173: An invalid control character [230] was present in the cookie value or attribute

处理

  1. 在构造Date字符串的时候不要使用空格,使用其他字符来替换,这种方法比较简单。
  2. 如果非要使用空格来隔开日期与时间,我们需要对其进行编码就可以了,但是读取的时候不要忘记了解码,不然在用户界面上会出现乱码。
// cookie 包含非法字符,特殊字符做下 URLEncoder.encode(str, "UTF-8")
String curTime = URLEncoder.encode(format.format(new Date()), "utf-8");

参考

解决java.lang.IllegalArgumentException: An invalid character [32] was present in the Cookie value错误

你可能感兴趣的:(通用表单,java,开发语言)