收藏
回答

微信支付回调返回偶然出现 “校验结果签名失败“的异常?

经对比回调的xml比正常回调的多了sign_type字段,正常的xml没有sign_type这个字段;但是返回的xml中有这个字段;

回答关注问题邀请回答
收藏

2 个回答

  • 微信支付技术助手8
    微信支付技术助手8
    2020-03-06

    添加一下WePayTS8(备注:微信社区XXX问题)

    2020-03-06
    有用
    回复
  • peng
    peng
    2020-03-05

    校验签名时可以把非签名字段排除,严格按说明签名,比如sign_type就不是参与签名的字段,不管是否有值都过滤掉。

    2020-03-05
    有用
    回复 2
    • 俊生
      俊生
      2020-03-05
      这是微信sdk里面的签名判断,过滤不了,微信sdk在判断签名的时候有个参数叫xmlString,这里是微信返回的xml格式的数据;微信返回多了这个字段,等于xmlSring这个参数的字符串就变了,导致判断为伪造请求;多次测试只有这一条订单会这样,其他订单微信回调的xml也没sign_type字段,官方文档的也没有这个字段,但是这个异常订单,微信返回多了这个字段,不知道怎么找微信技术人员咨询,为何返回会多给这一个字段
      2020-03-05
      回复
    • peng
      peng
      2020-03-05回复俊生
      明天应该有官方同学回复,你们是对接那个支付方式出现这个情况?https://pay.weixin.qq.com/wiki/doc/api/index.html
      2020-03-05
      回复
登录 后发表内容
问题标签