支付宝的sdk验证签名失败问题

这几天从官网下了电脑支付的案例来尝试,但是老是验证签名失败!

demo的结构是

 

根据官方提示的,配置好沙盒环境,我认为主要出错的是配置RSA2的公匙,这个根据支付宝官网下载的工具生成2048的公匙和私匙。

应用公匙就是左边的 “查看应用公匙”,配置好会自动生成支付宝公匙!

然后就在demo配置javaConfig。

这里需要注意配置支付宝公匙,不要配成应用公匙!!!!!

notify_url这个页面是支付宝主动访问的,所有需要natapp来内网穿透,这是官网上截取的。

 

 最后注意的点是:沙盒环境下的网关与正式环境下不一样。

 

但是这样我虽然异步通知收到了但是老是sdk验证失败!

后来把valueStr = new String(valueStr.getBytes("ISO-8859-1"), "utf-8");注释才验证成功的!

 

return_url是支付成功的返回页,notify_url是异步通知,哪为什么官方的demo的异步通知让我们验证成功后做业务处理,不能放在返回页吗?

查了网上的资料,人可以使之在没有跳转回来之前就关掉了该页面,此时如果是在return_url处理,就没有业务处理了,这样直接导致了掉单。

 

posted on 2019-01-23 15:43  hhaoj  阅读(4258)  评论(0)    收藏  举报

导航