通過微信掃碼登錄網站流程

通過微信掃碼登錄網站

微信開放平臺文檔地址:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Authorized_Interface_Calling_UnionID.html

步驟:

一、在管理中心中創建應用,填寫信息並等待審覈完成。

二、獲取到app中的 AppID 和AppSecret

三、獲取微信登錄二維碼。

將app的AppID 和 想要跳轉回的網址拼接到下面:
https://open.weixin.qq.com/connect/qrconnect?appid={appid}&redirect_uri={redirect_uri}&response_type=code&scope=snsapi_login&state=STATE#wechat_redirect
其中redirect_uri要經過url編碼urlEncode,然後就可以在網頁中打開這個鏈接,可以看到一個二維碼。
在這裏插入圖片描述
使用微信掃描這個二維碼,就會跳轉回redirect_uri地址,並且後面添加參數https://xx.xxxxxxxxxx.cn/?code=081Oir591OoDfL1I0t291OkB591Oir5F&state=STATE
這裏的code用來獲取用戶信息.

四、獲取access_token和openid

可以使用第三步獲取到的code來獲取這兩個參數,這兩個參數可以獲取微信用戶的詳細信息
https://api.weixin.qq.com/sns/oauth2/access_token?appid={appid}&secret={secret}&code=081Oir591OoDfL1I0t291OkB591Oir5F&grant_type=authorization_code
結果如下:

{
	"access_token": “......",  //接口調用憑證
	"expires_in":7200,
	"refresh_token":"......",
	"openid":"......", // 授權用戶唯一標識
	"scope":"snsapi_login",
	"unionid":"......"
}

一個code只能使用一次,再次調用結果:

{"errcode":40029,"errmsg":"invalid code, hints: [ req_id: LEMBIfyFe-O2AhuA ]"}

五、獲取用戶詳細信息

如果只是標識用戶唯一身份那麼到第四步就可以了。再想獲取用戶信息,比如用戶名,頭像,可以往下獲取:
https://api.weixin.qq.com/sns/userinfo?access_token={access_token}&openid={openid}

{
	"openid":"......",
	"nickname":"......",
	"sex":1,
	"language":"zh_CN",
	"city":"Changchun",
	"province":"Jilin",
	"country":"CN",
    "headimgurl":"......",
	"privilege":[],
	"unionid":"......"
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章