欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

2025年微信授權(quán)登錄全方案

admin
2025年1月13日 15:13 本文熱度 584

導(dǎo)讀

這篇文章是關(guān)于 2025 年微信小程序授權(quán)登錄的全方案盤點(diǎn)。介紹了三種登錄方式:無(wú)感登錄,包括前端和后端的步驟;手機(jī)號(hào)登錄,個(gè)人賬號(hào)無(wú)法使用且收費(fèi),流程簡(jiǎn)化;用戶信息授權(quán)登錄,講述其歷史變遷及使用方法,可降低基礎(chǔ)庫(kù)版本獲取真實(shí)信息。還列舉了相關(guān)案例和代碼。

經(jīng)常做小程序的小伙伴都曾遇到過(guò)這個(gè)問(wèn)題,那就是小程序授權(quán)登錄官方文檔經(jīng)常更新API不時(shí)更新迭代對(duì)于基礎(chǔ)庫(kù)版本等等,都有著既定要求。

按照以往方式再去做,發(fā)現(xiàn)行不通,折騰一上午,整個(gè)人沉默了,原來(lái)是官方又進(jìn)行了大改......

目前為止,微信小程序登錄授權(quán),有三種方式,第一種是無(wú)感登錄,第二種是手機(jī)號(hào)登錄,第三種是用戶信息授權(quán)登錄

比較經(jīng)典的就是飛豬小程序和順豐小程序,如果你不知道怎么做,可以去看看它們的樣式,一目了然

比如下面這個(gè)登錄首頁(yè)面,就屬于經(jīng)典的手機(jī)號(hào)登陸

點(diǎn)擊快速登錄,小程序會(huì)迅速調(diào)用用戶的手機(jī)號(hào)授權(quán)

再放一個(gè)案例,那就是用戶信息授權(quán)登錄,顧名思義,該登陸主要為了獲取用戶信息(姓名、性別、地址、昵稱等等),用于給個(gè)人中心模塊做鋪墊,圖中人名我這邊和諧掉,因?yàn)橐彩俏仪皟商靹傋鐾甑臉I(yè)務(wù)。

至于無(wú)感登錄,這里就不演示了,因?yàn)闊o(wú)感無(wú)感,顧名思義就是沒(méi)有感覺(jué),用戶是看不出來(lái)授權(quán)的,所以直接講方法就好!

順便放上小程序開(kāi)發(fā)文檔:微信小程序官方文檔

1.無(wú)感登錄

首先無(wú)感登錄是最簡(jiǎn)單的,步驟只有兩步,第一步是前端調(diào)用官方文檔API——wx.login,拿到登陸憑證code,通過(guò)wx.request()發(fā)起網(wǎng)絡(luò)請(qǐng)求,隨即傳給后端。

第二步,后端那邊利用code + appid + appsecret這三個(gè)數(shù)值,調(diào)用微信的auth.code2Session接口,拿到用戶唯一標(biāo)識(shí)openid 和 會(huì)話密鑰session_key,隨即定義token,將之與openid和session_key關(guān)聯(lián),最后再返回給前端。

前端拿到token,就很簡(jiǎn)單了,按照正常操作即可,比如拿token設(shè)置請(qǐng)求頭、存入vuex、pinia等等,順理成章直接寫即可,大家都能明白。

總結(jié)一點(diǎn):無(wú)感登錄,說(shuō)白了,就是拿小程序token的過(guò)程,夠直白了吧!

至于有人會(huì)問(wèn),appid和appsecret是什么?看下圖即可!(都在你的小程序后臺(tái)里)

微信小程序開(kāi)放平臺(tái):官方傳送門

具體講一下方法,順便把代碼附在下面,大家可以直接移植!

首先要注意的是,調(diào)用wx.login的時(shí)候,你的小程序基礎(chǔ)庫(kù)版本,不能低于2.3.1

可以在你的原生小程序工具查看

其次再看看wx.login的傳參+返回值,重點(diǎn)關(guān)注success和fail,一個(gè)是成功回調(diào),一個(gè)是失敗回調(diào)

返回值是code,有時(shí)效限制,這里要注意的是,前端的appId,要和后端的appId一致。

有的人拿不同的appId去調(diào)用接口,最后會(huì)導(dǎo)致500報(bào)錯(cuò)!

代碼示例:(用uniapp的,將wx.login替換為uni.login即可),example.com/onLogin 這個(gè)是事例網(wǎng)址,需要替換為你們后端的接口,主要用來(lái)獲取token。

// php 代碼解讀

wx.login({

  success (res) {

    if (res.code) {

      //發(fā)起網(wǎng)絡(luò)請(qǐng)求

      wx.request({

        url: 'https://example.com/onLogin',

        data: {

          code: res.code

        }

      })

    } else {

      console.log('登錄失敗!' + res.errMsg)

    }

  }

})?

2.手機(jī)號(hào)登陸

需要注意的是,個(gè)人賬號(hào),無(wú)法使用手機(jī)號(hào)登錄功能,并且該功能是收費(fèi)的。

標(biāo)準(zhǔn)單價(jià)每次組件調(diào)用成功,收0.03元,每個(gè)小程序賬號(hào)將有1000次體驗(yàn)額度,該1000次的體驗(yàn)額度為正式版、體驗(yàn)版和開(kāi)發(fā)版小程序共用,超額后,體驗(yàn)版和開(kāi)發(fā)版小程序調(diào)用同正式版小程序一樣,均收費(fèi)。

這一要說(shuō)明一點(diǎn)的是,相信很多人在網(wǎng)上都看到類似encryptedData、iv獲取手機(jī)號(hào)的方法,25年為止,微信又改版了,手機(jī)號(hào)登錄的流程又得到了簡(jiǎn)化。(前提是使用付費(fèi)服務(wù))

流程為:調(diào)用bindgetphonenumber,返還code,這個(gè)code是限時(shí)+一次性的,服務(wù)器只需要拿著這個(gè)code去和微信換手機(jī)號(hào)就可以了

傳送門一:官方手機(jī)組件

傳送門二獲取手機(jī)號(hào)最新方法 

<button open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber"></button>?

這里要注意一點(diǎn),如果你用的是uniapp,那么bindgetphonenumber需要換為@getphonenumber

還是通過(guò)wx.login拿code,然后調(diào)用這個(gè)接口,具體要和后端商量,前端的工作并不多,調(diào)用而已

參數(shù)需要這幾個(gè)

與此同時(shí),返回值手機(jī)號(hào)就來(lái)了

所以手機(jī)號(hào)登錄沒(méi)那么復(fù)雜,重點(diǎn)是需要付費(fèi),不付費(fèi)的話,讓用戶自行輸入表單,也行,看具體業(yè)務(wù)實(shí)現(xiàn)方式

3.用戶信息授權(quán)登錄

對(duì)于用戶授權(quán)登錄的問(wèn)題,那么就繞不過(guò)wx.getUserInfo和wx.getUserProfile的歷史淵源了。

早期的小程序開(kāi)發(fā),大家都是通過(guò)wx.getUserInfo拿到用戶頭像昵稱,結(jié)果2021年4月,微信社區(qū)改版,導(dǎo)致getUserInfo不再有授權(quán)流程,開(kāi)發(fā)者只能獲取到匿名信息。

比如名字,大家都叫做“微信用戶”,而頭像,接口返回的都是統(tǒng)一灰色頭像。

可這樣就帶來(lái)一個(gè)問(wèn)題,那就是不同用戶,昵稱頭像都一樣,完全不方面管理,所以wx.getUserProfile接口應(yīng)運(yùn)而生!

這一有一個(gè)行為,大家要注意,wx.getUserInfo獲取用戶信息,不會(huì)有底部彈窗,而wx.getUserProfile則會(huì)出現(xiàn)下方的底部彈窗(樣式看開(kāi)頭),根據(jù)你的需求自行選擇。

再到2022年10月,微信社區(qū)又改版了,就連wx.getUserProfile這個(gè)接口,也不給開(kāi)發(fā)者權(quán)限了,用戶名+頭像,全部變成了統(tǒng)一的“微信用戶”+灰色頭像。

講完這段歷史,我教你怎么用,如果你想獲取到用戶的真實(shí)信息,那么你可以把小程序基礎(chǔ)庫(kù),降低版本,可以選為2.25.4,也比較穩(wěn)定。

小程序官方對(duì)于低版本的基礎(chǔ)庫(kù),還是會(huì)提供完整功能的。我的建議是,你直接用wx.getUserProfile就好,底部也有彈窗信息。

getUserProfile(e) {

  wx.getUserProfile({

    desc: '用于完善會(huì)員資料', 

    success: (res) => {

      this.setData({

        userInfo: res.userInfo,

        hasUserInfo: true

      })

    }

  })

}?


作者:西紅柿燉前男友
鏈接:https://juejin.cn/post/7457926197163687970
來(lái)源:稀土掘金
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。?

該文章在 2025/1/15 12:37:43 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved