uniapp开发小程序之微信登录

调微信授权登录方法

onLoad(){
    //微信授权登录
	this.getgotoLogin();
}
    //授权登陆
	getgotoLogin:function(){
				//防止闭包造成影响
				let _this = this;
				    uni.getUserProfile({
				     lang: 'zh_CN',
				     desc: "获取用户信息",
				     success: (res) => {
				      console.log();
				      uni.login({
				       provider: 'weixin',
				       success: loginRes => {
				        // 获取用户信息 loginRes
				        //==== 根据业务需求更改data  code一定要有
						let data = {
							code:loginRes.code,
							avatarUrl:res.userInfo.avatarUrl,
							gender:res.userInfo.gender,
							nickName:res.userInfo.nickName,
							province:res.userInfo.province,
							city:res.userInfo.city
						};
				        console.log(data);
						//====调接口将参数传给后端,后端需要code值获取openid
				        _this.$u.api.getUserlist(data).then(res => {
				         console.log(res);
				         if(res.code == 200){
				          //登录成功返回200  token存储到本地缓存
						  console.log(res)
						  //先清除缓存
						  try {
						      uni.removeStorageSync('token');
						  } catch (e) {
						      // error
						  }
						  //存入新的token
						  			 uni.setStorage({
						  			     key: 'token',
						  			     data: res.data,
						  			     success: function () {
						  			         uni.showToast({
						  			         	title:"登录成功"
						  			         })
											//获取用户信息方法
                                              ...
                                            _this.getUserInfo()
						  			     }
						  			 });
				         }else{
				          uni.showToast({
				           icon:'none',
				           title:"获取用户信息失败"
				          })
				         }
				        })
				       }
				      });
				     },

                    //uniapp接口调用失败的回调函数
				     fail: res => {
				      console.warn(res)
				      let _this = this
				      uni.showModal({
				       title: '系统提示',
				       content: '系统想要获取用户信息,请点击确定按钮!',
				       confirmText: '确定',
				       success: function(res) {
				        if (res.confirm) {
				         _this.getgotoLogin()
				        } else if (res.cancel) {
				         uni.showToast({
				          title:'用户拒绝授权'
				         })
				        }
				       },
				      })
				     }
				    })
					
			},
// 接口
let getUserlist = (params = {}) => vm.$u.post(userlist,params);

java 后端代码

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值