由于callback回调地址并不是后端项目上线之后的接口地址,所以需要nginx进行代理
callback: http://suqiqaq.cn/api/pay/callback
nginx:
upstream wxcallback
{
server 127.0.0.1:8002;
}
server
{
listen 80;
server_name suqiqaq.cn;
location ~ /api/pay/callback
{
proxy_pass http://wxcallback;
}
}
但是上线之后调用支付接口报错:
java.security.InvalidKeyException: Illegal key size or default parameters
原因:商家证书的私钥路径不同,因为一个是linux环境一个是windows环境。
在部署linux环境的时候,可能会引发加密的的java异常。这个时候需要手动配置jdk和jdk-security安全相关的环境才可以校验通过。
去官网下载jdk8 无限制政策文件
JDK8无限制政策文件的下载地址: JCE Unlimited Strength Jurisdiction Policy Files for JDK/JRE 8 Download
使用 xftp ,把里面的两个jar包:local_policy.jar
和 US_export_policy.jar
替换掉原来 Jdk 安装目录/usr/java/jdk1.8.0_121/jre/lib/security 下的两个jar
包就可以了。
最后支付成功: