微信公众号授权登录获取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)
});
|