V3版API请求token(Authorization)报错
发布于 4 年前 作者 xia41 1465 次浏览 来自 分享

在与微信接口联调的时候,发现这么个错误:

{
    "code":"SIGN_ERROR",
    "detail":{
        "detail":{
        "issue":"sign not match"
        },
        "field":"signature",
        "location":"authorization",
        "sign_information":{
        "method":"GET",
        "sign_message_length":22,
        "truncated_sign_message":"GET
        /v3/payscore/permiss/authorization/100d8445a8b282a1f87fa70e5c?service_id=50001⊂_mchid=100000
        1598498953
        6W3oZhmfoHL2dc6xIk0
        ",
        "url":"/v3/payscore/missions/code/1397f45a8b282a1f87fa70e5c?service_id=50001⊂_mchid=163988"
        }
        },
    "message":"错误的签名,验签失败"
}

明显是请求的token出错,仔细阅读了连接发现问题所在。原文链接:https://wechatpay-api.gitbook.io/wechatpay-api-v3/qian-ming-zhi-nan-1/qian-ming-sheng-cheng

getToken("GET", url, "", MCHID, SERIAL_NO, "pem/apiclient_key.pem");

生成签名Authorization的请求参数要求:

1、GET,POST 都可以,有参数的就选择POST,参数内容为参数名和参数值的json格式;

2、url:这个填写你接下来要请求的接口url,如果接口地址中携带 ?& 的参数键值对,url中也包括这些;

3、"":请求中如果不涉及到参数,就是"",否则就添加参数名和参数值的json串;

4、MCHID,SERIAL_NO,.pem文件,分别就是你的商户号、证书号以及证书中的秘钥了。

回到顶部