微信支付控件调用的时返回
body不是UTF-8编码的问题, 测试环境正常,当发布到正式环境是出现了这个问题。
查找微信官网文档,无果,网上大部分的回答都是对xml进行转码,试后无果
后来通过排查,觉得是不是因为服务器编码导致通信的编码被服务器覆盖了,原本服务器的编码设置的是zh_CN.GBK编码 ,随后直接上手修改编码
以centos为例
vim /etc/profile 再 文件末端 加入
export LANG=zh_CN.UTF-8
source /etc/profile
再次查看服务器编码,已经正常,接下来再次进行微信支付,发现可以正常支付了
至此对这个问题的总结
服务器的编码需要和项目编码需要一致