验签失败自查方案-支付宝接口常见错误系列

简介: 说明:   验签只需要使用到支付宝公钥 错误原因:   1.支付宝公钥使用错误导致   2.验签方法使用错误   3.参数错误导致,例如乱码,带自定义参数,编码格式。 自查流程(按照推荐流程检查)   第一步(重点检查):支付宝公钥使用是否错误参考这个帖子自查:[url]https://openclub.

说明: 
  验签只需要使用到支付宝公钥 

错误原因: 
  1.支付宝公钥使用错误导致 
  2.验签方法使用错误 
  3.参数错误导致,例如乱码,带自定义参数,编码格式。 

自查流程(按照推荐流程检查) 
  第一步重点检查):支付宝公钥使用是否错误参考这个帖子自查:[url]https://openclub.alipay.com/read.php?tid=1495&fid=25[/url]
  第二步:验签方法错误(请使用下方的demo中的地址接收异步通知进行验签测试) 

    说明: 
    正常接口使用 AlipaySignature.rsaCheckV1,sign_type不参与签名 
   特殊说明:AlipaySignature.rsaCheckV2方法生活号异步通知需要使用,会保留sign_type参数参与验签。 

   异步demo分享(适用于所有支付类接口异步验签) 
    java,php,.NET验签demo下载地址:[url]https://docs.open.alipay.com/203/105910[/url] 
    注意:请大家使用手机网站demo进行验签测试即可,使用文件中的notify_url相关的文件和方法 

    自行实现验签参考:[url]https://doc.open.alipay.com/docs/doc.htm?docType=1&articleId=106120[/url] 

 第三步:异步通知返回参数检查 
    说明: 
      1.支付返回的通知不会乱码,一般java语言可能会在接收以后出现中文乱码,这个需要自己处理,demo中也给了一个方案(notify_url.jsp页面中。如果出现乱码就开启再测试): 

//获取支付宝POST过来反馈信息Map params = new HashMap();Map requestParams = request.getParameterMap();for (Iterator iter = requestParams.keySet().iterator(); iter.hasNext();) {    String name = (String) iter.next();    String[] values = (String[]) requestParams.get(name);    String valueStr = "";    for (int i = 0; i < values.length; i++) {        valueStr = (i == values.length - 1) ? valueStr + values[i]                : valueStr + values[i] + ",";    }    //乱码解决,这段代码在出现乱码时使用    //valueStr = new String(valueStr.getBytes("ISO-8859-1"), "utf-8");    params.put(name, valueStr);}

2.代码中开启debug(调试模式) 导致验签失败(这个问题可能比较少)。 

如果大家根据自查还是没有解决,欢迎在帖子下面进行追问,按照下面格式进行提问(信息不全不回复,谢谢配合) 
正确提问方式:使用环境(沙箱还是正式环境)+接口名称(中文+英文)+验签失败的交易号+返回的参数(提供&符号连接的格式) 
如果解决了大家的问题,欢迎点赞评论支持一下

目录
相关文章
|
1月前
|
前端开发 API 项目管理
云效常见问题之编译前端的时候报了个错说证书过期如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
22 0
|
11月前
|
存储 算法 安全
拒绝接口裸奔!开放API接口签名验证
接口安全问题 请求身份是否合法? 请求参数是否被篡改? 请求是否唯一?
|
监控 机器人 网络安全
一个脚本实现 SSL 证书到期监控,微信通知,太强了!
一个脚本实现 SSL 证书到期监控,微信通知,太强了!
229 0
一个脚本实现 SSL 证书到期监控,微信通知,太强了!
|
存储 NoSQL 前端开发
JWT 登录认证 + Token 自动续期方案,写得太好了!
JWT 登录认证 + Token 自动续期方案,写得太好了!
1271 0
|
数据安全/隐私保护
产品设计:纠正你的网站注册时[验证邮箱]的流程
1. 填写用户名、密码、重复密码、Email、……,提交;2. 收取邮件,点击激活链接;3. 进一步完善资料或使用网站。
2883 0
微信公众平台开发(7)--验证消息的合法性
本文目录 1. 前言 2. 区分验证方法 3. 验证 4. 小结
191 0
|
Java Maven 开发者
微信公众平台开发(4)--填写服务器配置并验证有效性
本文目录 1. 前言 2. 填写服务器配置 3. 验证有效性 3.1 构建项目 3.2 接受微信验证消息 3.3 提交验证 3.4 启用服务器配置 4. 小结
455 0
阿里云短信验证出现签名不合法(不存在或被拉黑)
阿里云短信验证出现签名不合法(不存在或被拉黑)
785 0
阿里云短信验证出现签名不合法(不存在或被拉黑)
YYC松鼠短视频系统【bug】短信验证码功能bug,新注册短信用户任意填写验证码都能通过注册的严重bug修复
YYC松鼠短视频系统【bug】短信验证码功能bug,新注册短信用户任意填写验证码都能通过注册的严重bug修复
YYC松鼠短视频系统【bug】短信验证码功能bug,新注册短信用户任意填写验证码都能通过注册的严重bug修复