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

简介: 说明:   验签只需要使用到支付宝公钥 错误原因:   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(调试模式) 导致验签失败(这个问题可能比较少)。 

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

目录
相关文章
|
2月前
|
前端开发
codereview开发问题之无登录权限等校验的上传接口会带来问题如何解决
codereview开发问题之无登录权限等校验的上传接口会带来问题如何解决
|
4月前
|
前端开发 API 项目管理
云效常见问题之编译前端的时候报了个错说证书过期如何解决
云效(CloudEfficiency)是阿里云提供的一套软件研发效能平台,旨在通过工程效能、项目管理、质量保障等工具与服务,帮助企业提高软件研发的效率和质量。本合集是云效使用中可能遇到的一些常见问题及其答案的汇总。
|
算法 数据安全/隐私保护 UED
到银联的调试过程,总结,记录
到银联的调试过程,总结,记录
|
数据安全/隐私保护
产品设计:纠正你的网站注册时[验证邮箱]的流程
1. 填写用户名、密码、重复密码、Email、……,提交;2. 收取邮件,点击激活链接;3. 进一步完善资料或使用网站。
3009 0
阿里云短信验证出现签名不合法(不存在或被拉黑)
阿里云短信验证出现签名不合法(不存在或被拉黑)
906 0
阿里云短信验证出现签名不合法(不存在或被拉黑)
微信公众平台开发(7)--验证消息的合法性
本文目录 1. 前言 2. 区分验证方法 3. 验证 4. 小结
232 0
|
Java Maven 开发者
微信公众平台开发(4)--填写服务器配置并验证有效性
本文目录 1. 前言 2. 填写服务器配置 3. 验证有效性 3.1 构建项目 3.2 接受微信验证消息 3.3 提交验证 3.4 启用服务器配置 4. 小结
528 0
YYC松鼠短视频系统【bug】短信验证码功能bug,新注册短信用户任意填写验证码都能通过注册的严重bug修复
YYC松鼠短视频系统【bug】短信验证码功能bug,新注册短信用户任意填写验证码都能通过注册的严重bug修复
YYC松鼠短视频系统【bug】短信验证码功能bug,新注册短信用户任意填写验证码都能通过注册的严重bug修复
验签出错-自查方案
错误原因:    1.密钥不匹配    2.编码格式不统一  3.请求参数中有空格,转义符,特殊字符(基本上会出现在biz_content中)   4. notify_url不能加?id=123这类自定义参数      错误示例:https://您的域名/notify_url.php?id=123&test=abc     注:如果您的请求报错请同时检查您的异步地址是否符合要求    5..NET开发语言请注意在自查上述问题,没有发现问题,请更新官方最新sdk在重新测试。
610 12
收不到异步通知自查方案-支付宝接口常见错误系列
说明:   1.需http://或者https://格式的完整路径   例:https://您的域名/notify_url.php  ,支持ip地址方式。(推荐使用域名)   2.不能加?id=123这类自定义参数   错误示例:https://您的域名/notify_url.
1777 11