进件接口调用,当我缺少某个字段的时候,接口返回该字段必须得填写。
例如:{"code":"PARAM_ERROR","detail":{"location":"body","value":""},"message":"输入源“/body/settlement_info/qualification_type”映射到字段“所属行业”必填性规则校验失败,此字段为必填项"}
这说明调用接口,加密方式,签名应该是正常的,成功的。
但是当传递全部参数时,接口提示验签失败。
例如:{"code":"SIGN_ERROR","detail":{"detail":{"issue":"sign not match"},"field":"signature","location":"authorization","sign_information":{"method":"POST","sign_message_length":2986,"truncated_sign_message":"POST\n/v3/applyment4sub/applyment/\n1598601132\nBFDC2B8AD31567A0FE5894B24BFA61B1\n{\"busine\n","url":"/v3/applyment4sub/applyment/"}},"message":"错误的签名,验签失败"}
这是什么情况,该怎么解决?
1,这种情况,不一定你的签名没问题,只是校验字段必填优先级高。
2,你的签名问题。参考下面
验证签名工具:
链接:https://pan.baidu.com/s/1ixOAnYyZVW13dFr0jWVpvw 提取码:wujv
,麻烦使用V3签名验证工具参考V3签名文档https://wechatpay-api.gitbook.io/wechatpay-api-v3/
进行排查修改。V3签名需使用apiv3秘钥。麻烦参考https://kf.qq.com/faq/180830E36vyQ180830AZFZvu.html