uniapp 微信小程序 登录

定义web页面  open-type 获取用户信息 调用

 

<!-- 微信授权模块 -->
		<!-- #ifdef MP-WEIXIN -->
		  <view class='mask' v-if="scopeUserInfo">
			<view class='accredit'>
			  <view class='title'>需要你的授权</view>
			  <view class='info'>
				<view class='p'>为了提供更好的服务</view>
				<view class='p'>请在稍后的提示框中点击"允许"</view>
			  </view>
			  <view class='img'>
				<image mode='widthFix' src="https://qsh.sharexwd.top/api/files/common/accredit.png"></image>
			  </view>
			  <view class="btn_sq">
				<button class='btn-jujue' size="mini" @tap="goindex">拒绝</button>
			  	<button class='btn-shouquan' size="mini" open-type="getUserInfo"  @getuserinfo="getUserInfo" withCredentials="true">允许</button>
			  </view>
			</view> 
		  </view>
		<!-- #endif -->

js 部分 (wx.login_获取code凭证,wx.getUserInfo_通过code获取用户信息)

// 获取微信用户登录信息
getUserInfo: function() {
    var that = this;
    console.log(that.baseUrl,"url")
	wx.login({ //获取登录凭证
		success: function(res) {
			var code = res.code
			console.log(code,"code")
			wx.getUserInfo({
				success: function(info) {
					console.log(info,"info")
					var userInfo = info.userInfo
	    			var nickName = userInfo.nickName
					var avatarUrl = userInfo.avatarUrl
					var gender = userInfo.gender
					wx.request({
						url: that.baseUrl + '后端保存code和信息的接口', //1
						header: {
							'content-type': 'application/x-www-form-urlencoded'
						},
						method: "POST",
						data: {
		    				nickName: nickName,//名称
							avatarUrl: avatarUrl,//头像
							code: code,//code
							gender:gender
						}, // 2
						success: function(res) {
							console.log(res.data) 
   			                var d = res.data;
							if (d.code==200) {
								that.scopeUserInfo = false;
									uni.setStorage({
										key: 'token',
										data: d.message
									})
									that.baseToast('登录成功')
		    							setTimeout(function(){
											uni.navigateBack({
		    									delta:1
											})
										})
	    					}else{
								that.baseToast('登录失败,请稍后再试')
							}
						},
						fail: function(res) {
							console.log(res);
						}

					})

					that.scopeUserInfo = true

				},
				fail: function() {
					uni.showModal({
					    title: '提示',
						showCancel: false,
						content: '请先授权后再访问',
					})
				}

			});
		},
		fail: function() {
			console.log("登录失败")
		}
	}) //获取登录凭证结束
},

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值