支付宝手机网页支付java demo调试问题和解决办法

本文分享了在使用支付宝手机网页支付时遇到的问题及解决方案,包括生成签名时的Base64加密错误、DERinput错误和非法签名错误的解决办法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用支付宝手机网页支付的时候遇到一些问题跟大家分享一下。

1.生成签名的时候,使用Base64加密时报错:DerInputStream.getLength():lengthTag = 127, too big.

这个问题是因为商户密钥没有设置,在AlipayConfig中配置好合作伙伴ID和商户密钥,注意:java版的密钥要经过处理,具体方法参考官网

2.生成签名的时候,报错:DER input, Integer tag error.

这个问题主要是商户密钥中用的是RSA公钥,要用openssl进行加密再填入商户密钥,注意:openssl windows版本在下载下来的demo中已经有了,不用再上网找,并且网上的方法很麻烦。


3.错误代码:ILLEGAL_SIGN

主要是使用的私钥跟合作伙伴ID对应的公钥匹配不上,一定要用自己上传的公钥对应的私钥。注意:因为首先是openssl随机生成私钥,然后再通过openssl生成公钥,如果私钥忘了,最好是重新生成一个,然后再生成对应的私钥,把公钥上传给支付宝。(官网有说)

总的来说并不复杂,只是一些小问题,以下是调试成功的时候的图片,注意:调试的时候金额最好是0.01元,你懂的。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值