欢迎您光临深圳塔灯网络科技有限公司!
电话图标 余先生:13699882642

网站百科

为您解码网站建设的点点滴滴

小程序获取用户openId,session_key;node后端

发表日期:2019-08 文章编辑:小灯 浏览次数:855

流程:
1.前端用wx.login()方法拿到code,然后把code给后端;
2.后端拿code,appid,secret去请求微信后台接口;
3.接口会返回用户数据,包括openid和session_key,拿到openId再返回给前端

小程序端:

// 登录wx.login({success: res => {console.log("login success res",res)// 发送 res.code 到后台换取 openId, sessionKey, unionIdwx.request({url: 'http://localhost:8086/getUserInfo',data: { code: res.code },method: 'POST', // OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECTheader: {'content-type': 'application/x-www-form-urlencoded'},// 设置请求的 headersuccess: function (res) {console.log('获取用户unionId', res);},fail: function () {console.log("index.js wx.request CheckCallUser fail");},complete: function () {// complete}})}})

node.js端

//获取openIdapp.post("/getUserInfo", async (req, res) => {console.log('从前台获取来的req.body',req.body);if(req.body.code) {let options = {method: 'POST',url: 'https://api.weixin.qq.com/sns/jscode2session?',formData: {appid: "wx7xxxxxxx0",//appidsecret: "710fxxxxxxx45b1a",//密钥,在小程序后台获取js_code: req.body.code,//用户codegrant_type: 'authorization_code'}};request(options, (error, response, body) => {if(error) { //请求异常时,返回错误信息res.json({"status": "error",})} else {let _data = JSON.parse(body);res.json(_data);console.log('返回的用户id:',_data);}})}})

成功
在这里插入图片描述

如果一直返回 40092 ,检查appid前后端是否一致,密钥是否错误
在这里插入图片描述


本页内容由塔灯网络科技有限公司通过网络收集编辑所得,所有资料仅供用户学习参考,本站不拥有所有权,如您认为本网页中由涉嫌抄袭的内容,请及时与我们联系,并提供相关证据,工作人员会在5工作日内联系您,一经查实,本站立刻删除侵权内容。本文链接:http://dengtar.com/20831.html
相关小程序
 八年  行业经验

多一份参考,总有益处

联系深圳网站公司塔灯网络,免费获得网站建设方案及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:余经理:13699882642

Copyright ? 2013-2018 Tadeng NetWork Technology Co., LTD. All Rights Reserved.