tomcat 部署swagger 请求到后端乱码
2017-08-29 14:30
204 查看
问题:
前端通过swagger的方式进行获取:(注意数组在swagger中直接用回车进行获取)
问题定位:
平台码为iso-8859-1造成的,在拿到是开之后先进行解码并转码。
最终解决方式:
尝试过的方案:(同事通过这种方式解决了,但是我这里没有)
在tomcat 的JVM option中增加
-Dfile.encoding=UTF-8
和tomcat中的配置
@ApiOperation(value = "", notes = "查看关键词列表") @ResponseBody @RequestMapping(value = "getByKeywords", method = RequestMethod.GET, produces = "application/json;charset=utf-8") Result<Page<List<AplQuestionAnswer>>> listQuestionAndAnswers( @ApiParam(required = true, name = "keywords", value = "关键词") @RequestParam(value = "keywords", required = true) String[] keywords, @ApiParam(required = false, name = "pageSize", value = "页大小", defaultValue = "20") @RequestParam(value = "pageSize", required = false, defaultValue = "20") int pageSize, @ApiParam(required = false, name = "pageIndex", value = "当前页", defaultValue = "0") @RequestParam(value = "pageIndex", required = false, defaultValue = "0") int pageIndex ) { //如果为空则查询全部 if (keywords == null || keywords.length == 0) { keywords = new String[]{}; }
前端通过swagger的方式进行获取:(注意数组在swagger中直接用回车进行获取)
问题定位:
平台码为iso-8859-1造成的,在拿到是开之后先进行解码并转码。
最终解决方式:
public static String decodeAndTrim(String str) throws UnsupportedEncodingException { if (str == null) { return null; } String encoding = TemplateStringUtil.getEncoding(str); if ("ISO-8859-1".equals(encoding)) { str = new String(str.getBytes("ISO-8859-1"), "utf-8"); } return str.trim(); }
尝试过的方案:(同事通过这种方式解决了,但是我这里没有)
在tomcat 的JVM option中增加
-Dfile.encoding=UTF-8
和tomcat中的配置
<Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 中增加 URIEncoding="UTF-8" <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" URIEncoding="UTF-8"/>
相关文章推荐
- linux下tomcat部署get请求乱码问题解决方法
- linux下tomcat部署get请求乱码问题解决方法
- linux下tomcat部署get请求乱码问题解决方法
- tomcat部署javaweb ,请求中参数中文乱码问题
- linux下tomcat部署get请求乱码问题解决方法
- linux下tomcat部署get请求乱码问题解决方法
- Tomcat在处理GET和POST请求时产生的乱码问题
- tomcat部署HTTPS后,HTTP协议的请求改为HTTPS请求的方法
- docker部署tomcat乱码和系统时间不对处理
- tomcat项目部署后启动,work文件夹项目为空,log日志也为空,请求各种404
- tomcat中请求参数中文中乱码问题
- 项目在Eclipse无乱码,Tomcat单独部署时产生乱码
- nginx系列-06-nginx配置https并转发请求至后端tomcat-商用https证书
- postman请求参数乱码及Tomcat服务器设置UTF-8解决方案
- 在 tomcat 下 请求参数的乱码问题
- Tomcat在处理GET和POST请求时产生的乱码问题
- 应用部署在Tomcat下乱码的原因之一
- web项目使用Tomcat作为服务器,GET请求参数中文乱码
- myeclipse中tomcat部署编译jsp页面后,浏览器显示中文乱码
- get请求受Tomcat编码影响导致乱码