uniapp微信小程序端登錄授權完整版示例(前端+後端)

uniapp微信小程序登錄的前端已經發過一篇博客了(地址:https://blog.csdn.net/qq_35616850/article/details/89711597),搞明白API之後會發現很簡單
很多朋友諮詢我後端的寫法,由於太忙,沒有回答,今天通過博客的方式統一回復大家。
首先我們要了解在開發項目的時候你需要哪些參數,微信小程序登錄過程中我們需要用戶唯一標識,和一些用戶信息,主要用到wx.login()和wx.getUserInfo()兩個接口。
獲取唯一標識這一步需要後端配合,也就是在你點擊登錄的時候把需要後端需要的數據傳過去就可以了。具體看代碼:
<button @click="login"></button>

login(){
	var self=this;
	uni.showLoading({
		mask:true,
		title: '正在登錄···',
		complete:()=>{}
	});
	uni.login({
	  provider: 'weixin',
	  success: function (loginRes) {
		let js_code=loginRes.code;//js_code可以給後臺獲取unionID或openID作爲用戶標識
		// 獲取用戶信息
		uni.getUserInfo({
		  provider: 'weixin',
		  success: function (infoRes) {
			//infoRes裏面有用戶信息需要的話可以取一下
			let username=infoRes.userInfo.nickName;//用戶名
			let gender=infoRes.userInfo.gender;//用戶性別
			let formdata={code:js_code,username:username,sex:gender};
			//login是接口地址,看下面PHP代碼
			self.$go.post("/login",formdata).then(res=>{//這是我封裝的請求方法
				if(res.code==200){
					//登錄成功
				}
			})
		  },
		  fail:function(res){}
		})
	  },
	  fail:function(res){}
	})
}
後臺php接口示例,僅供參考,一定要理清邏輯
/**
    * 小程序登錄
    *  code 登錄時獲取的 code
    *  username 用戶名
    *  sex 用戶性別
    */
    public function login(){//使用的tp5框架
    	$appid = 'wx321212121212121';//微信小程序appid
        $secret = '211kdshsakdakh121k2j1h2k';//微信小程序secret
		$code = input('code');//接收code參數,換取用戶唯一標識
      	$username = input('username');//接收用戶名
      	$sex = input('sex');//接收用戶性別
      	//下面url是請求微信端地址獲取用戶唯一標識的,對應的appid和secret改成自己的
      	$url="https://api.weixin.qq.com/sns/jscode2session?appid=".$appid."&secret=".$secret."&js_code=".$code."&grant_type=authorization_code";
      	$res = $this->https_request($url);//https_request是封裝的發送請求的方法
      	$res = json_decode($res,true);//將返回結果JSON化
      	if(isset($res['errcode'])){
	         //如果請求微信那邊報錯,就返回前端報錯信息
	    }else{
			//請求微信那邊成功,獲取unionid,先判斷數據庫有沒有
			$user = db('user')->where(array('unionid'=>$res['unionid']))->find();
			if(empty($user)){
				//如果沒有就將用戶信息插入到數據庫,這裏就不做演示了。
			}else{
				//存在用戶就返回登陸成功
			}
		}
這就是uniapp微信小程序完整的登陸流程了,仔細看哦!有問題可以評論,或進羣:682783851
覺得不錯的請點個贊,謝謝!也可以搜索小程序【購靚號】進去體驗哦!

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章