尋夢新聞LINE@每日推播熱門推薦文章,趣聞不漏接❤️
當我們在進入微信商城瀏覽商品或者購物時,有沒有想過微信商城是怎麼記住你的?
下面來介紹一下微信授權的工作原理
一、openId
openId是什麼?openId是用戶在當前公眾號下的唯一標識(‘身份證’),就是說通過這個openId,就能區分在這個公眾號下具體是哪個用戶。
假如用戶A在當前公眾號下購買了一件商品,用戶的下單信息肯定要存儲到後台數據庫,那根據什麼進行存儲呢?openId是用戶在當前公眾號下的唯一標識,通過openId和用戶的下單購買信息進行鍵值對的數據綁定。那麼我要查詢該用戶購買過什麼商品,就能夠通過openId去查詢,並且數據是唯一的,不會和另外的用戶數據有衝突。
拓展:UnionID:一個商家或公司可能會有多個公眾號,假如用戶A同時都關注了這個公司下面的三個公眾號,那麼這個用戶就會有三個openId(一個公眾號就對應一個openID)。如果作為開發者的我們,要對這個用戶在這三個公眾號下消費的數據進行匯總,我怎麼獲取到這三份數據(同一用戶的)?答案是 UnionId,微信開發者文檔:如果開發者擁有多個移動應用、網站應用和公眾帳號,可通過獲取用戶基本信息中的unionid來區分用戶的唯一性,因為同一用戶,對同一個微信開放平台下的不同應用(移動應用、網站應用和公眾帳號),unionid是相同的。就是說如果要獲取用戶在同一公司不同公眾號下的數據,後台表結構不但要關聯openId,還要關聯UnionId。
二、怎麼獲取openId?
想要獲取用戶的openId,必須要微信授權,微信授權分兩種:
① 靜默授權:snsapi_base,沒有彈窗,只能獲取用戶的openId。
②非靜默授權:snsapi_userinfo,有彈框彈出需要用戶手動點擊確認授權。可以獲取openId,用戶的頭像、昵稱等
三、通過openId做用戶的數據綁定
獲取到openId後,在後台可以創建用戶信息並與openId做數據綁定,綁定後就可以查到用戶的一下操作記錄、訂單信息等。