微信小程序開發登錄流程(微信小程序開發流程ppt)

小程序開發 2404
今天給各位分享微信小程序開發登錄流程的(de)知識,其中也會對微信小程序開發流程ppt進行(xíng)解釋,如(rú)果能碰巧解決你現在面臨的(de)問題,别忘了關注本站,現在開始吧(ba)!本文目錄一(yī)覽: 1、微信小程序用戶授權登錄

今天給各位分享微信小程序開發登錄流程的(de)知識,其中也會對微信小程序開發流程ppt進行(xíng)解釋,如(rú)果能碰巧解決你現在面臨的(de)問題,别忘了關注本站,現在開始吧(ba)!

本文目錄一(yī)覽:

微信小程序用戶授權登錄

1、appid: 微信小程序/公衆号的(de)唯一(yī)憑證,即 AppID。

獲取途徑:可(kě)在「微信公衆平台 - 設置 - 開發設置」頁中獲得。(需要已經成為(wèi)開發者,且帳号沒有(yǒu)異常狀态)

用途:小程序的(de) AppID 相當于小程序平台的(de)一(yī)個身份證,會在很多場景中使用,比如(rú)小程序的(de)登錄、授權等

2、openID: openID 是微信生态下 應用的(de)唯一(yī)标識 , ,即同一(yī)個用戶在不同的(de)小程序下的(de)openid是不同的(de)。

獲取途徑:調用 auth.code2Session 接口,通過code(登錄憑證,調用wx.login獲取)+appid+appsecret(小程序密鑰,獲取方式和(hé)appid一(yī)樣)可(kě)以換取openid,即 靜默授權。

用途:用于在開發者系統中标識用戶信息

3、UnionID:UnionID 是微信生态下 用戶的(de)唯一(yī)标識 ,換句話說,同一(yī)用戶,對同一(yī)個微信開放平台下的(de)不同應用,UnionID是相同的(de)。

獲取途徑:綁定了開發者帳号的(de)小程序,可(kě)以通過以下途徑獲取 UnionID。

1)開發者可(kě)以直接通過 wx.login + code2Session 獲取到該用戶 UnionID,無須用戶授權。

2)小程序端調用雲函數時,可(kě)在雲函數中通過 Cloud.getWXContext 獲取 UnionID。

用途:标識同一(yī)個微信開放平台下的(de)用戶,可(kě)用于去(qù)重判斷

也就是我(wǒ)們(men)常用的(de)微信移動端/PC端之間的(de)掃碼登錄,PC端用微信掃碼登錄,微信移動端确認授權登錄後,應用可(kě)以從微信拿到用戶的(de)open id或union id,将微信獲取的(de)用戶信息與自(zì)己賬戶體系中的(de)用戶身份進行(xíng)關聯;

需要用戶确認登錄,這樣可(kě)以通過用戶的(de)個人确認,獲取用戶全面的(de)信息,無論是否關注相關微信公衆号等都可(kě)以獲取。

1、靜默授權不需要用戶确認,隻需要用戶訪問某個網頁,屬于嵌套在普通網頁裏的(de)授權形式,但是隻能獲取到用戶的(de)唯一(yī)标示openid和(hé)union id,無法拿到用戶的(de)微信頭像、微信名稱等個人信息,對于用戶的(de)簡單認證還是很有(yǒu)用的(de)。

2、靜默授權的(de)過程:

1)調用 wx.login() 獲取 臨時登錄憑證code

2)調用 auth.code2Session 接口,換取用戶唯一(yī)标識 openID

3)調用本地(dì)後台服務,将 openID 映射到本地(dì)的(de) userId

微信開發文檔-小程序登錄流程

參考文章(zhāng):

1、 【微信小程序用戶授權登錄】

2、 微信第三方登錄(靜默授權和(hé)非靜默授權)

3、 openid會變嗎?微信小程序開發中的(de)appid、openid、unionid使用總結

微信小程序怎樣開發

微信版本升級後,打開微信,點擊底部的(de)“發現”這個菜單項,就會發現升級後的(de)“發現”菜單裏,增加了“小程序”這樣一(yī)個功能。

2.點擊打開小程序後,可(kě)以看到有(yǒu)附近的(de)小程序和(hé)我(wǒ)的(de)小程序,附近的(de)小程序是所在定位周邊的(de)小程序。

下面的(de)小程序列表可(kě)以看到的(de)是我(wǒ)們(men)之前打開過的(de)一(yī)些小程序,如(rú)果有(yǒu)自(zì)己覺得很好用的(de)小程序就可(kě)以點擊左上角,添加到我(wǒ)的(de)小程序裏面。

3.微信小程序還有(yǒu)具有(yǒu)搜索功能,打開搜索頁面可(kě)以輸入想要找的(de)小程序。

微信小程序的(de)登錄流程

傳統的(de)web開發實現登陸功能,一(yī)般的(de)做(zuò)法是輸入賬号密碼、或者輸入手機(jī)号及短(duǎn)信驗證碼進行(xíng)登錄。

服務端校驗用戶信息通過之後,下發一(yī)個代表登錄态的(de) token 給客戶端,以便進行(xíng)後續的(de)交互,每當token過期,用戶都需要重新登錄。

而在微信小程序中,可(kě)以通過微信官方提供的(de)登錄能力方便地(dì)獲取微信提供的(de)用戶身份标識,快速建立小程序內(nèi)的(de)用戶體系,從而實現登陸功能。

實現小程序用戶體系主要涉及到openid和(hé)code的(de)概念:

1.調用wx.login()方法會生成code,将code作為(wèi)參數傳遞給微信服務器指定接口,就可(kě)以獲取用戶的(de)openid。

2.對于每個小程序,微信都會将用戶的(de)微信ID映射出一(yī)個小程序 openid,作為(wèi)這個用戶在這個小程序的(de)唯一(yī)标識。

微信小程序登陸具體實現的(de)邏輯如(rú)下圖所示:

更加詳細的(de)功能圖如(rú)下所示:

實際業務中,我(wǒ)們(men)還需要登錄态是否過期,通常的(de)做(zuò)法是在登錄态(臨時令牌)中保存有(yǒu)效期數據,該有(yǒu)效期數據應該在服務端校驗登錄态時和(hé)約定的(de)時間(如(rú)服務端本地(dì)的(de)系統時間或時間服務器上的(de)标準時間)做(zuò)對比。

這種方法需要将本地(dì)存儲的(de)登錄态發送到小程序的(de)服務端,服務端判斷為(wèi)無效登錄态時再返回需重新執行(xíng)登錄過程的(de)消息給小程。

另一(yī)種方式可(kě)以通過調用wx.checkSession檢查微信登陸态是否過期:

1.如(rú)果過期,則發起完整的(de)登錄流程

2.如(rú)果不過期,則繼續使用本地(dì)保存的(de)自(zì)定義登錄态

這種方式的(de)好處是不需要小程序服務端來參與校驗,而是在小程序端調用AP,流程如(rú)下所示:

微信小程序登陸流程

官方說明為(wèi):

;secret=SECRETjs_code=JSCODEgrant_type=authorization_code

獲取步驟:

(1)獲得appid,secret,js_code

(2)用appid,secret,js_code分别替換如(rú)上接口地(dì)址的(de)APPID、SECRET、JSCODE,其他不變,組裝成完整的(de)地(dì)址。

微信小程序獲得session_key和(hé)openId(加解密、簽名系列)

微信小程序獲得session_key和(hé)openId(加解密、簽名系列)

總結:從1,2,3步驟可(kě)知,隻要獲得appid,secret,js_code就可(kě)得到session_key和(hé)openId

appid為(wèi)小程序ID

secret為(wèi)小程序密鑰(AppSecret)

獲得方法:小程序後台登錄網址:

打開小程序後台網址、注冊、登錄後,按如(rú)下圖所示就可(kě)找到你的(de)AppID和(hé)AppSecret。

微信小程序獲得session_key和(hé)openId(加解密、簽名系列)

注意:目前小程序個人不能注冊,開放注冊範圍:企業、政府、媒體、其他組織;

當然用這個辦法,個人也能注冊了。

傳送門:

微信小程序獲得session_key和(hé)openId(加解密、簽名系列)

(2)調用wx.login()接口獲取登錄憑證js_code

(3)調用wx.request()接口把js_code發送到服務器後台

(4)在服務器後台,已知appId、secret、js_code

然後調用如(rú)下官方提供的(de)http接口,即可(kě)返回獲取openId、session_key

微信小程序開發登錄流程的(de)介紹就聊到這裏吧(ba),感謝你花時間閱讀本站內(nèi)容,更多關于微信小程序開發流程ppt、微信小程序開發登錄流程的(de)信息别忘了在本站進行(xíng)查找喔。

掃碼二維碼