小程序登录
- 通过调用wx.login()方法获取一个 code
- 调取后台接口将 code 和 appid 传给后台,后台就会去调取微信的登陆凭证校验接口
- 前端通过调取后台接口拿到一个jwt字符串格式的token,里面包含 session_key(会话密钥)及openid(openid是用户的唯一标识)等,然后前端进行jwt解析拿到session_key,openid
const weappJwt = require('./miniprogram_npm/jwt-decode/index')
App({
onLaunch: function () {
var that = this
wx.login({
success(res) {
if (res.code) {
let data = {
code: res.code,
appid: '申请的appid',
}
getLoadin(data).then((res) => {
if (res.code == 200) {
wx.setStorage({
data: res.data,
key: 'token',
})
let ret = weappJwt(res.data)
that.globalData.userInfo.openId = ret.openid
that.globalData.userInfo.session_key = ret.session_key
} else {
wx.showToast({
title: res.message,
icon: 'none'
})
}
})
} else {
console.log('登录失败!' + res.errMsg)
}
}
})
}
})