成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺析微信內Web App自動登錄

移動開發
最初是在Tower.im的公眾號里見到了WebApp自動登錄,想做一個同樣效果的。那時候對公眾號開發不熟悉,問了一些人也說的稀里糊涂的,文檔又亂,最后花了好長時間才實現。這個功能需要的接口是「網頁授權獲取用戶基本信息」,需要認證企業號才能使用。如果沒有權限的話可以試一下微信之門,我也只是知道這個東西,從來沒試過。

[[147316]]

最初是在Tower.im的公眾號里見到了WebApp自動登錄,想做一個同樣效果的。那時候對公眾號開發不熟悉,問了一些人也說的稀里糊涂的,文檔又亂,***花了好長時間才實現。這個功能需要的接口是「網頁授權獲取用戶基本信息」,需要認證企業號才能使用。如果沒有權限的話可以試一下微信之門,我也只是知道這個東西,從來沒試過。

基本的思路是通過公眾號OAuth API獲取用戶微信的openid。***次使用的時候讓用戶登錄,然后在數據庫里把openid和自己應用的userid對應起來。以后獲得用戶的openid之后就可以自動登錄到對應的用戶上。

我的Web App是用AngularJS實現的SPA,登錄之后獲取一個token放在localStorage,給后端發請求的時候,把token寫在Header的Authorization里。

這個過程中不需要使用Cookie,但是為了減少跳轉次數,還是用了Cookie。我把和微信登錄相關的功能寫在了幾個PHP單頁里,用一個redirect.php做入口,把要跳轉的頁面放在參數里,由redirect.php檢查用戶是否已經獲得了token,在獲取到token之后跳轉到目標頁面。

登錄流程圖如下:

1952533049.jpg

其中和微信有關的操作就是第二行和第三行。

微信的OAuth認證方式是,讓用戶在微信客戶端里打開這樣一個地址https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect,微信認證服務器會引導用戶跳轉到你指定的REDIRECT_URI,并且在該URL后面加上一個CODE參數。

例如,想在http://example.com/redirect.php?type=post頁面獲得用戶的信息,就在頁面內使用isset($_GET['code'])判斷是否存在code參數。

如果不存在,就讓用戶訪問https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=http%3a%2f%2fexample.com%2fredirect.php%3ftype%3dpost&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect。(注意把url作為參數時要經過UrlEncode)

微信服務器會把用戶重定向到http://example.com/redirect.php?type=post&code=CODE。開發者就可以從url參數中獲得CODE了。

然后開發者就可以拿著這個CODE,去https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code換取用戶的openid。

拿到openid之后就可以判斷用戶是否綁定過,并進行下一步操作了。

如果需要用戶的昵稱、頭像等更多信息,需要將***個url中的scope參數改為snsapi_userinfo,詳細信息可以看微信的開發文檔。

責任編輯:倪明 來源: 貝葉書
相關推薦

2011-07-01 13:29:15

2011-04-06 13:39:18

2013-04-09 23:52:29

微信公眾平臺技巧

2013-07-16 10:57:09

微信云端

2013-04-10 13:07:40

微信公眾平臺Web App

2023-03-12 15:25:37

2024-11-04 09:04:20

2009-07-28 15:53:43

ASP.NET Web

2009-09-04 17:58:38

C# Web Brow

2009-01-16 14:08:42

PHP開發Web應用執行效率

2021-10-22 21:22:40

微信解散群聊移動應用

2018-02-07 08:18:23

微信微信6.6.2刪除好友

2013-08-12 09:53:37

Android微信5.Web App平臺微信公共賬號

2021-10-19 08:07:21

微信小程序代碼

2009-07-09 16:47:26

Servlet的Web

2011-12-29 15:35:39

Web

2021-06-10 10:51:27

程序基礎架構

2015-11-05 16:48:18

android源碼登陸界面

2021-09-24 15:00:26

微信PC電腦移動應用

2013-04-10 15:14:18

Web App開發WebApp
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人精品毛片国产亚洲av十九禁 | 老司机久久 | 麻豆久久久 | 一区二区不卡视频 | 久久久精品日本 | 射欧美| 一区二区福利视频 | 国产成人一区二区三区精 | 国产乱码精品一区二区三区忘忧草 | www国产精品| 久久成人人人人精品欧 | 久久一区二区三区免费 | 欧美色影院 | 亚洲国产一区二区视频 | 久久国产精品无码网站 | 国产精品爱久久久久久久 | 色婷婷综合网 | 亚洲成人av在线播放 | 日本精品一区二区三区在线观看视频 | 高清人人天天夜夜曰狠狠狠狠 | 日韩免费视频 | 国内激情av片 | 久久国 | 国产日韩一区二区三免费高清 | 亚洲精品在线91 | 91国产视频在线观看 | 国产精品久久网 | 日本三级全黄三级三级三级口周 | 久久三区| 亚洲天天干 | 自拍偷拍欧美 | 国产视频一区在线 | 97精品超碰一区二区三区 | 久久久精彩视频 | 一区二区三区在线电影 | 一区二区三区视频 | 91精品国产91久久久久福利 | 亚洲国产二区 | 久久久久久国产精品免费免费男同 | 韩国av电影网 | 狠狠久久|