收藏
回答

网页授权请求时,根本没要求入参要mch_id。为啥会报mch_id参数格式错误

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug 获取access_token 微信iOS客户端 6.5.3 2.0.0

https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html

直接看下面这个api

第二步:通过code换取网页授权access_token

报错信息:

{return_msg=mch_id参数格式错误, return_code=FAIL}

下面是源码:

p.s.刚开始用GET请求,结果报错要求要POST

另外这个代码是专门拿出来测试用的,code用了常量,仅为测试为何会报mch_id参数格式错误。maps便是上面的报错内容。

String url = MyWXPayConfig.getQueryOrderUrl()+"?appid="+wxPayAppConfig.getJsapiAppID()+"&secret="+wxPayAppConfig.getAppSecret()+"&code=0515Nvll2cbJg74a94nl2fTtIQ15NvlN&grant_type=authorization_code";
String result;
Map<String,String> mapJson = new HashMap<>();
mapJson.put("appid",wxPayAppConfig.getJsapiAppID());
mapJson.put("secret",wxPayAppConfig.getAppSecret());
mapJson.put("code","0515Nvll2cbJg74a94nl2fTtIQ15NvlN");
mapJson.put("grant_type","grant_type");
String json = "";
try {
    json = WXPayUtils.mapToXml(mapJson);
} catch (Exception e) {
    e.printStackTrace();
    baseEntity.setStatus(2);
    baseEntity.setMessage("获取open_id请求入参转码时异常");
    return baseEntity;
}
try {
    result = HttpClient.sendPostDataByJson(url,json);
} catch (IOException e) {
    e.printStackTrace();
    baseEntity.setStatus(2);
    baseEntity.setMessage("获取open_id请求时异常:异常原因:"+e.getMessage());
    return baseEntity;
}
Map maps ;
try {
    maps = WXPayUtils.xmlToMap(result);;
}catch (Exception e){
    e.printStackTrace();
    baseEntity.setStatus(2);
    baseEntity.setMessage("获取open_id请求时异常:异常原因:"+e.getMessage());
    return baseEntity;
}


最后一次编辑于  2021-06-22
回答关注问题邀请回答
收藏

3 个回答

  • ﹎℡Austin💍
    ﹎℡Austin💍
    2021-06-22

    看来错误很明显了哈

    2021-06-22
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    2021-06-22

    亮代码

    2021-06-22
    有用
    回复 3
    • 丹麦诗人
      丹麦诗人
      2021-06-22
      已亮
      2021-06-22
      回复
    • Mr.Zhao
      Mr.Zhao
      2021-06-22回复丹麦诗人
      MyWXPayConfig.getQueryOrderUrl   你调用的支付?
      2021-06-22
      回复
    • 丹麦诗人
      丹麦诗人
      2021-06-22回复Mr.Zhao
      服了自己,谢谢了。确实是接口搞错了,我在配置的时候以为直接配上了。后来控制台打印出来确实是正常的url我就完全忽视了。。。
      2021-06-22
      回复
  • จุ๊บ
    จุ๊บ
    2021-06-22

    报错信息呢?

    2021-06-22
    有用
    回复 7
    • 丹麦诗人
      丹麦诗人
      2021-06-22
      补上了
      2021-06-22
      回复
    • จุ๊บ
      จุ๊บ
      2021-06-22回复丹麦诗人
      还有个问题就是,小程序授权和公众号网页授权是两回事
      2021-06-22
      回复
    • 丹麦诗人
      丹麦诗人
      2021-06-22回复จุ๊บ
      对,我这个做的是公众号网页授权
      2021-06-22
      回复
    • จุ๊บ
      จุ๊บ
      2021-06-22回复丹麦诗人
      那只能亮你写的网页授权代码了
      2021-06-22
      回复
    • 丹麦诗人
      丹麦诗人
      2021-06-22回复จุ๊บ
      已亮
      2021-06-22
      回复
    查看更多(2)
登录 后发表内容