微信公众号获取openid报错41008,可能是请求参数有误?

微信公众号授权登录获取openid时请求成功,返回错误码41008,提示“missing code”;

我们在获取openid时需要将微信重定向地址返回的code参数拿到,传给openid请求,vue使用axios请求数据,默认post请求参数是json格式,但后台需要formData格式的,这时候后台拿不到我们的参数,故报‘missing code’。

解决方案:

1.引用node中的qs模块

npm install qs --save-dev

2.在你需要post请求的文件中引入

import qs from ‘qs’;

3.请求中使用qs.stringify()转化参数格式

axios.post("/weixinapi/Weixin/openid", qs.stringify({
      code: code,
      is_guanzhu: is_guanzhu,
      url: url
    }))
    .then(res => {
      console.log(res.data);
      localStorage.setItem('userMsg',JSON.stringify(res.data))
    }).catch( error => {
      console.log(error)
    });

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章