天天看点

ALI64报错排查方案

ali64这个错误涉及到的可能性比较多所以整理一个帖子分享给大家,大家可以根据我的这个方案进行排查。 

1.首先检查密钥是否匹配(密钥不匹配导致的问题可能性最大)

  商户原始私钥(rsa_private_key)配置到项目中,适用于php,C#等 

  商户pkcs8私钥(rsa_private_key_pkcs8)配置到项目中,适用于java,安卓,iso等 

  商户公钥(rsa_public_key)这个需要上传支付宝开放平台 

2.如果确认第一步密钥没有问题,需要检查商户公钥上传的位置是否正确 

  a.移动支付接口(接口名称:mobile.securitypay.pay)的上传合作伙伴密钥管理 

  b.app支付接口(接口名称:alipay.trade.app.pay)的上传开放平台密钥管理 

注意您使用的接口接口不同上传位置不同 

3.如果第二步也没有问题,这里建议直接测试官方提供的demo配置好自己的appid ,pid,私钥等,进行请求支付测试。 

  app支付接口(接口名称:alipay.trade.app.pay)demo下载地址:[url]https://docs.open.alipay.com/54/104509[/url] 

  如果demo也是报错ali64,需要重新检查第一步和第二步,这个一定是密钥问题。 

  如果demo可以正常请求,但是自己的项目会报错看第四步检查方案。 

4.输出官方demo的请求参数和自己项目的请求参数进行对比,看自己的项目中的请求参数是否有中文乱码,空格,或者非法字符(非法字符指的是键盘上的符号)进行排查 

5.检查是否对请求参数进urlencode 

  a.移动支付接口(接口名称:mobile.securitypay.pay)对sign签名做urlencode 

  b.app支付接口(接口名称:alipay.trade.app.pay)对请求字符串的所有一级value(biz_content作为一个value)进行encode。 

如果上面步骤排查还是无法解决,欢迎在帖子下方追问