uniapp 微信小程序授权登录总结

一:微信小程序中的登录

主要思路:

(1)用button组件的open-type="getUserInfo"属性获取用户信息;

(2)用uni.login 方法获取唯一的标识码code,将获取到的所需参数通过接口传给后端;

(3)后端返回成功回调数据,将所需要的信息存入缓存。

具体实现:

1:在页面中使用 button 组件的 open-type属性获取用户信息


 

 

2:授权登录

getUserInfo(e) {

let _this = this;

let ret=e.detail;

if(ret.errMsg == "getUserInfo:fail auth deny") {

_this.$api.toast("为了更好的服务,请同意授权"); //自己封装第一个提示方法

}else if(ret.errMsg == "getUserInfo:ok") {

_this.userLogin(e.detail);

}else {

_this.$api.toast("授权失败")

}

},

3:登录接口

userLogin(e) {

let _this = this ;

uni.login({

success: res => {

let code = res.code;

if(code){

//登录参数

let data={

code: code,

signature:e.signature,

iv:e.iv,

encryptedData:e.encryptedData,

rawData:e.rawData,

shop_id:_this.$store.state.shopId || 0

}

//调登录接口

_this.$api.ajax('smdc/index/login',data,function(ret){

console.log("登录成功回调",ret.token);

uni.navigateBack();

},'POST',true);

}

},

fail: () => {

_this.$api.toast("没有获取到登陆信息,请重试")

}

});

}

以上就是小程序微信登录的所有大概流程。over~

你可能感兴趣的:(uniapp 微信小程序授权登录总结)