摘要:詳情接口我們這里主要講的是網站應用,網站應用微信登錄是基于協議標準構建的微信授權登錄系統即上面的協議。在微信客戶端授權登錄獲取用戶信息的可以查看。微信授權登錄目前支持模式,適用于擁有端的應用授權。
一、OAuth2.0
OAuth(開放授權)是一個開放標準,允許用戶讓第三方應用訪問該用戶在某一網站上存儲的私密的資源(如照片,視頻,聯系人列表),而無需將用戶名和密碼提供給第三方應用。
允許用戶提供一個令牌,而不是用戶名和密碼來訪問他們存放在特定服務提供者的數據。每一個令牌授權一個特定的網站(例如,視頻編輯網站)在特定的時段(例如,接下來的2小時內)內訪問特定的資源(例如僅僅是某一相冊中的視頻)。這樣,OAuth允許用戶授權第三方網站訪問他們存儲在另外的服務提供者上的信息,而不需要分享他們的訪問許可或他們數據的所有內容。
二、準備工作我們這里主要模擬使用OAuth2.0,用戶通過掃描我們網頁應用的二維碼并進行授權登錄來獲取用戶的基本信息的過程。 詳情接口:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&lang=zh_CN 我們這里主要講的是網站(Web)應用,網站應用微信登錄是基于OAuth2.0協議標準構建的微信OAuth2.0授權登錄系統(即上面的協議)。在微信客戶端授權登錄(獲取用戶信息)的可以查看:http://www.cnblogs.com/0201zcr/p/5131602.html。在進行微信OAuth2.0授權登錄接入之前,在微信開放平臺注冊開發(fā)者帳號,并擁有一個已審核通過的網站應用,并獲得相應的AppID和AppSecret,申請微信登錄且通過審核后,可開始接入流程。三、注冊開發(fā)者賬號
提交審核即可,等微信審核通過,我們即可獲得我們需要的網頁應用的appid和AppSecret,并配置后回調的域名了(這三樣是我們開發(fā)所必須的)。四、授權流程
微信OAuth2.0授權登錄讓微信用戶使用微信身份安全登錄第三方應用或網站,在微信用戶授權登錄已接入微信OAuth2.0的第三方應用后,第三方可以獲取到用戶的接口調用憑證(access_token),通過access_token可以進行微信開放平臺授權關系接口調用,從而可實現獲取微信用戶基本開放信息和幫助用戶實現基礎開放功能等。
微信OAuth2.0授權登錄目前支持authorization_code模式,適用于擁有server端的應用授權。該模式整體流程為:
1. 第三方發(fā)起微信授權登錄請求,微信用戶允許授權第三方應用后,微信會拉起應用或重定向到第三方網站,并且?guī)鲜跈嗯R時票據code參數; 2. 通過code參數加上AppID和AppSecret等,通過API換取access_token; 3. 通過access_token進行接口調用,獲取用戶基本數據資源或幫助用戶實現基本操作。五、獲取網頁的二維碼
當我們通過微信的認證,獲取到了appid和AppSecret,并配置了回調的域名。我們就已經可以獲取屬于我們網頁的二維碼了,獲取的方式很簡單,只需打開一個微信的鏈接,加上我們的appid和回調域名即可在網頁上面打開二維碼,用戶用微信客戶端掃碼并授權登錄之后即會跳轉到我們配置的回調域名下。注意:
1、這里填寫的是域名(是一個字符串),而不是URL,因此請勿加http://等協議頭; 2、授權回調域名配置規(guī)范為全域名,比如需要網頁授權的域名為:www.qq.com,配置以后此域名下面的頁面http://www.qq.com/music.html 、 http://www.qq.com/login.html 都可以進行OAuth2.0鑒權。但http://pay.qq.com 、 http://music.qq.com 、 http://qq.com無法進行OAuth2.0鑒權六、請求url說明
第三方使用網站應用授權登錄前請注意已獲取相應網頁授權作用域(scope=snsapi_login),則可以通過在PC端打開以下鏈接:
https://open.weixin.qq.com/co...
返回說明
用戶允許授權后,將會重定向到redirect_uri的網址上,并且?guī)蟘ode和state參數
若用戶禁止授權,則重定向后不會帶上code參數,僅會帶上state參數
假如前面已經獲得code。我們可以通過code參數去獲取用戶openid和access_token,進而獲得用戶的信息。
通過code參數獲取access_token
https://api.weixin.qq.com/sns...
參數說明
參數 是否必須 說明 appid 是 應用唯一標識,在微信開放平臺提交應用審核通過后獲得 secret 是 應用密鑰AppSecret,在微信開放平臺提交應用審核通過后獲得 code 是 填寫第一步獲取的code參數 grant_type 是 填authorization_code七、(附)通過access_token獲取用戶的基本信息
獲取的前提條件
access_token有效且為超時; 微信用戶已授權給第三方應用賬號相應接口作用域(scope)【在二維碼生成連接那里填寫】
參數 說明 openid 普通用戶的標識,對當前開發(fā)者帳號唯一 nickname 普通用戶昵稱 sex 普通用戶性別,1為男性,2為女性 province 普通用戶個人資料填寫的省份 city 普通用戶個人資料填寫的城市 country 國家,如中國為CN headimgurl 用戶頭像,最后一個數值代表正方形頭像大小(有0、46、64、96、132數值可選,0代表640*640正方形頭像),用戶沒有頭像時該項為空 privilege 用戶特權信息,json數組,如微信沃卡用戶為(chinaunicom) unionid 用戶統一標識。針對一個微信開放平臺帳號下的應用,同一用戶的unionid是唯一的。寫在最后
最近在鼓搗微信開發(fā),整理了一些筆記,整個思路走下來 涉及不少后臺的知識,還需努力學習,希望分享的東西可以對大家有所幫助
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/99221.html
摘要:最近公司端網站登錄改版,新增加微信掃碼登錄。設置好后發(fā)現,微信自帶的樣式,碼太大了,位置也不對,需要調整。再看文檔微信文檔就是這個屬性上方的,就可以引用咱們自己寫的文件。 最近公司PC端網站登錄改版,新增加微信掃碼登錄。文檔微信掃碼登錄文檔。設置好后發(fā)現,微信自帶的樣式,碼太大了,位置也不對,需要調整。 showImg(https://segmentfault.com/img/bVXj...
摘要:最近公司端網站登錄改版,新增加微信掃碼登錄。設置好后發(fā)現,微信自帶的樣式,碼太大了,位置也不對,需要調整。再看文檔微信文檔就是這個屬性上方的,就可以引用咱們自己寫的文件。 最近公司PC端網站登錄改版,新增加微信掃碼登錄。文檔微信掃碼登錄文檔。設置好后發(fā)現,微信自帶的樣式,碼太大了,位置也不對,需要調整。 showImg(https://segmentfault.com/img/bVXj...
摘要:隨著微信的普及,掃碼登錄方式越來越被現在的應用所使用。這里基于微信公眾平臺的帶參數臨時二維碼,并且結合的服務實現掃碼登錄。對于用戶掃臨時的二維碼,微信會觸發(fā)相應的回調事件,我們需要在該回調事件中處理用戶的掃碼行為。 隨著微信的普及,掃碼登錄方式越來越被現在的應用所使用。它因為不用去記住密碼,只要有微信號即可方便快捷登錄。微信的開放平臺原生就有支持掃碼登錄的功能,不過大部分人還是在用公眾...
閱讀 1439·2021-11-11 16:54
閱讀 9319·2021-11-02 14:44
閱讀 2371·2021-10-22 09:53
閱讀 3259·2019-08-30 11:18
閱讀 1950·2019-08-29 13:29
閱讀 2002·2019-08-27 10:58
閱讀 1622·2019-08-26 11:38
閱讀 3517·2019-08-26 10:31