错误代码 invalid-signature 错误原因: 验签出错,建议检查签名字符串或签名私钥与应用公钥是否匹配

错误信息已经很明显了,就是说验签错误。

之前一度以为是自己的公钥私钥不对,一直在傻傻的改钥匙,蠢死。

造成这个报错有多种原因:

在这里插入图片描述
报错信息查验连接
在这里插入图片描述

首先,我这边密钥公钥,以及sign_type和编码格式都是指定好了的。
出错原因就在于我controller调用response.getWritter()打印这个页面字符串
在这个里面指定content无效,导致验签也无效,就会产生这个错误。

//请求
String head = "<html><head><meta http-equiv='Content-Type' content='text/html;charset=UTF-8'></head>";

String result = alipayClient.pageExecute(alipayRequest).getBody();

String bottom = "<body></body></html>";

//输出
response.getWriter().println(head + result + bottom);

在controller中加一句,去指定一下编码格式。

 response.setContentType("text/html;charset=UTF-8");

然后就不会再有这个错误
具体原因不太清楚,可能是jsp那边无法解析content
需要手动设置一下

Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐