请求参数中包含特殊字符问题

content-type 也叫MIME类型,是用来描述请求中媒体类型消息,定义于消息头中。
常见的媒体类型有如下:

  • text/html:html格式
  • text/xml:xml格式
  • text/plain:纯文本格式
  • image/gif:gif:图片格式
  • image/jpeg:jpg:图片格式
  • image/png:png:图片格式
  • application/xml:xml数据格式
  • application/json: json数据格式
  • application/pdf: pdf格式
  • application/msword: word文档格式
  • application/octet-stream: 二进制流数据
  • application/x-www-form-urlencoded:key-value形式
  • multipart/form-data 文件上传

以上为为常见的content-type的类型,上面几种类型中又以application/x-www-form-urlencoded,application-json,multipart/form-data三种最为常见

问题

媒体类型为application/x-www-form-urlencoded,表单提交的默认类型。如果媒体类型是application-json的话,是不会出现问题的。
因请求参数中包含英文括号导致接收参数的时候会将英文括号进行转义。
例:
请求参数在这里插入图片描述
后台接收
在这里插入图片描述
从上看到,接收到的参数进过转义不再是原来的样子了

解决

一些字符串工具类中可以解决这类问题,如commons.lang3等

	request.setDesc(StringEscapeUtils.unescapeHtml4(request.getDesc()));

在这里插入图片描述
我们可以看到参数转换成了原来的样子了

你可能感兴趣的:(异常处理)