獲取用戶信息方案介紹

轉(zhuǎn)自:微信社區(qū)

背景

小程序一個比較重要的能力就是獲取用戶信息循诉,也就是使用 wx.getUserInfo 接口。我們發(fā)現(xiàn)幾乎所有的小程序都會調(diào)用這個接口撇他。雖然我們在設(shè)計文檔上有提出最好的設(shè)計是在真正要用戶信息的情況下才去獲取用戶信息茄猫,不過很多開發(fā)者并沒有按照我們的期望去做狈蚤,導(dǎo)致用戶在使用的時候有很多困擾。

歸結(jié)起來有幾點:

  • 開發(fā)者在首頁直接調(diào)用 wx.getUserInfo 進行授權(quán)划纽,彈框有會使得一部分用戶放棄小程序的使用脆侮。

  • 開發(fā)者沒有處理用戶拒絕彈框的情況,有部分小程序強制要求用戶授權(quán)頭像昵稱等信息才能繼續(xù)使用小程序勇劣。

  • 用戶沒有很好的方式重新授權(quán)靖避,雖然在前幾個版本我們增加了設(shè)置頁面可以讓用戶選擇重新授權(quán),但是操作還是不夠便捷比默。

  • 開發(fā)者希望進到首頁就獲取到用戶的unionId幻捏,以便和之前已經(jīng)關(guān)注了公眾號的用戶畫像關(guān)聯(lián)起來。

開發(fā)者默認(rèn)將 wx.login 和 wx.getUserInfo 綁定使用,這個是由于我們一開始的設(shè)計缺陷和實例代碼導(dǎo)致: getUserInfo必須通過wx.login 在后臺生成session_key 后才能調(diào)用。

為了解決以上幾點爬骤,我們更新了三個能力:

  1. 使用組件來獲取用戶信息,用戶拒絕授權(quán)后也可以重新彈窗再次授權(quán)

  2. 若用戶滿足一定條件(下文有詳細介紹)榛臼,則可以用wx.login 獲取到的code直接換到unionId

  3. wx.getUserInfo 不依賴 wx.login 就能調(diào)用得到數(shù)據(jù)。

獲取用戶信息組件介紹

組件變化:

  • open-type 屬性增加 getUserInfo :用戶點擊時候會觸發(fā) bindgetuserinfo 事件窜司。

  • 新增事件 bindgetuserinfo :當(dāng) open-type 為 getUserInfo 時沛善,用戶點擊會觸發(fā)∪恚可以從事件返回參數(shù)的detail字段中獲取到和wx.getUserInfo 返回參數(shù)相同的數(shù)據(jù)金刁。

示例:

<button open-type="getUserInfo" bindgetuserinfo="userInfoHandler"> Click me </button>

和 wx.getUserInfo 不同之處在于:

  • APIwx.getUserInfo 只會彈一次框,用戶拒絕授權(quán)之后织咧,再次調(diào)用將不會彈框

  • 組件 由于是用戶主動觸發(fā)胀葱,不受彈框次數(shù)限制,只要用戶沒有授權(quán)笙蒙,都會再次彈框

直接獲取unionId

考慮很多場景下抵屿,業(yè)務(wù)方申請userinfo授權(quán)主要為了獲取unionid。我們鼓勵開發(fā)者在不騷擾用戶的情況下合理獲得unionid捅位,而僅在必要時才向用戶彈窗申請使用昵稱頭像轧葛。為此,凡使用“獲取用戶信息組件”獲取用戶昵稱頭像的小程序艇搀,在滿足以下全部條件時尿扯,將可以靜默獲得unionid。

  1. 在微信開放平臺下存在同主體的App焰雕、公眾號衷笋、小程序。

  2. 用戶關(guān)注了某個相同主體公眾號矩屁,或曾經(jīng)在某個相同主體App辟宗、公眾號上進行過微信登錄授權(quán)爵赵。

getUserInfo 和 login

很多開發(fā)者會把login和getUserInfo捆綁調(diào)用當(dāng)成登錄使用,其實login已經(jīng)可以完成登錄泊脐,可以建立賬號體系了空幻,getUserInfo只是獲取額外的用戶信息。

在login獲取到code容客,然后發(fā)送到開發(fā)者后端秕铛,開發(fā)者后端再通過接口去微信后端換取到openid和sessionKey(并且現(xiàn)在會將unionid也一并返回)之后,然后把3rd_session返回給前端缩挑,就已經(jīng)完成登錄行為但两。而login行為是靜默,不必授權(quán)的调煎,不會對用戶造成騷擾镜遣。

getUserInfo只是為了提供更優(yōu)質(zhì)的服務(wù)而存在,比如展示頭像昵稱士袄,判斷性別,通過unionId和其他公眾號上已有的用戶畫像結(jié)合起來提供歷史數(shù)據(jù)谎僻。所以不必在剛剛進入小程序的時候就強制要求授權(quán)娄柳。

推薦使用方法

  1. 調(diào)用wx.login 獲取code,然后從微信后端換取到sessionKey艘绍,用于解密getUserInfo返回的敏感數(shù)據(jù)赤拒。

  2. 使用wx.getSetting 獲取用戶的授權(quán)情況

    • 如果用戶已經(jīng)授權(quán),直接調(diào)用 API wx.getUserInfo 獲取用戶最新的信息

    • 用戶未授權(quán)诱鞠,在界面中顯示一個按鈕提示用戶登入挎挖,當(dāng)用戶點擊并授權(quán)后就獲取到用戶的最新信息。

  3. 獲取到用戶數(shù)據(jù)后可以進行展示或者發(fā)送給自己的后端航夺。

特別注意

為了給用戶提供更好的小程序環(huán)境蕉朵,我們約定在一段時間后(具體時間會做通知),若還出現(xiàn)以下情況(包括但不限于)阳掐,將無法通過審核

  1. 初次打開小程序就彈框授權(quán)用戶信息

  2. 未處理用戶拒絕授權(quán)的情況

  3. 強制要求用戶授權(quán)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末始衅,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子缭保,更是在濱河造成了極大的恐慌汛闸,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件艺骂,死亡現(xiàn)場離奇詭異诸老,居然都是意外死亡,警方通過查閱死者的電腦和手機钳恕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進店門别伏,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蹄衷,“玉大人,你說我怎么就攤上這事畸肆』侣” “怎么了?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵轴脐,是天一觀的道長调卑。 經(jīng)常有香客問我,道長大咱,這世上最難降的妖魔是什么恬涧? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮碴巾,結(jié)果婚禮上溯捆,老公的妹妹穿的比我還像新娘。我一直安慰自己厦瓢,他們只是感情好提揍,可當(dāng)我...
    茶點故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著煮仇,像睡著了一般劳跃。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上浙垫,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天刨仑,我揣著相機與錄音,去河邊找鬼夹姥。 笑死杉武,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的辙售。 我是一名探鬼主播轻抱,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼圾亏!你這毒婦竟也來了十拣?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤志鹃,失蹤者是張志新(化名)和其女友劉穎夭问,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體曹铃,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡缰趋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片秘血。...
    茶點故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡味抖,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出灰粮,到底是詐尸還是另有隱情仔涩,我是刑警寧澤,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布粘舟,位于F島的核電站熔脂,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏柑肴。R本人自食惡果不足惜霞揉,卻給世界環(huán)境...
    茶點故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望晰骑。 院中可真熱鬧适秩,春花似錦、人聲如沸硕舆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽抚官。三九已至蚂会,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間耗式,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工趁猴, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留刊咳,地道東北人。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓儡司,卻偏偏與公主長得像娱挨,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子捕犬,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,941評論 2 355