微信支付功能项目部署在window的tomcat出现编码问题

来源:互联网 发布:恒大淘宝核心管理层 编辑:程序博客网 时间:2024/06/05 03:50

因为公司的项目要用微信支付,部署时候发现总是报签名错,经过排查,发现是tomcat编码问题,在window环境默认编码是gbk,所以要设置tomcat编码为utf-8。


第一步:在catalina.bat里面的头部第二行添加

set JAVA_OPTS=-Xms128m -Xmx512m -XX:MaxPermSize=256m -Dfile.encoding=utf-8 -Dsun.jnu.encoding=utf-8

让java环境使用utf-8编码

第二步:在server.xml添加

URIEncoding="UTF-8" useBodyEncodingForURI="true",使tomcat发送的请求使用utf-8,如下面代码

<Connector port="8081" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" URIEncoding="UTF-8" useBodyEncodingForURI="true" />


控制台可能会有乱码,但是改成gbk就没事,但是微信签名失败,至今还没解决方案,如果谁有解决方案告知下,谢谢~

原创粉丝点击