1. 微信公眾平臺與微信開放平臺
微信登錄分為微信開放平臺和微信公眾平臺
微信公眾平臺:指使用微信內(nèi)置瀏覽器登錄網(wǎng)站,沒有二維碼顯示。
微信開放平臺:為PC或者移動網(wǎng)頁登錄網(wǎng)站,顯示二維碼,掃碼二維碼后登錄。
2. 網(wǎng)頁授權(quán)的兩種scope的區(qū)別
- 以snsapi_base為scope發(fā)起的網(wǎng)頁授權(quán),是用來獲取進(jìn)入頁面的用戶的openid的,并且是靜默授權(quán)并自動跳轉(zhuǎn)到回調(diào)頁的。用戶感知的就是直接進(jìn)入了回調(diào)頁(往往是業(yè)務(wù)頁面)
- 以snsapi_userinfo為scope發(fā)起的網(wǎng)頁授權(quán),是用來獲取用戶的基本信息的。但這種授權(quán)需要用戶手動同意,并且由于用戶同意過,所以無須關(guān)注,就可在授權(quán)后獲取該用戶的基本信息。
(PS:一般的話我們會選擇獲取用戶信息,所以一般采用snsapi_userinfo的方式。)
3. 公眾平臺里的服務(wù)號與訂閱號的區(qū)別
- 訂閱號每天可以發(fā)1條群發(fā)消息。
- 服務(wù)號一個(gè)月內(nèi)僅可以發(fā)送4條群發(fā)消息。
- 訂閱號的消息是折疊在聊天窗口的訂閱號里面的
- 服務(wù)號的消息是直接顯示在聊天窗口里的。
- 訂閱號不能深度開發(fā),提供各類今日資訊,以資訊為主。
- 服務(wù)號可以深度定制開發(fā),內(nèi)容提供一些功能服務(wù),以服務(wù)為主。
(PS:微信登錄的話必須是認(rèn)證過的服務(wù)號才可以)
4. 網(wǎng)頁授權(quán)access_token和普通access_token的區(qū)別
- 微信網(wǎng)頁授權(quán)是通過OAuth2.0機(jī)制實(shí)現(xiàn)的,在用戶授權(quán)給公眾號后,公眾號可以獲取到一個(gè)網(wǎng)頁授權(quán)特有的接口調(diào)用憑證(網(wǎng)頁授權(quán)access_token),通過網(wǎng)頁授權(quán)access_token可以進(jìn)行授權(quán)后接口調(diào)用,如獲取用戶基本信息;
- 其他微信接口,需要通過基礎(chǔ)支持中的“獲取access_token”接口來獲取到的普通access_token調(diào)用。
(PS:所以access_token是不通用的。)
5. 微信公眾號的配置
開發(fā)——》接口權(quán)限——》網(wǎng)頁服務(wù)——》網(wǎng)頁授權(quán)獲取用戶基本信息
然后點(diǎn)擊修改,修改授權(quán)回調(diào)域名

(PS:如果顯示的是“未獲得”,沒有修改項(xiàng)的話,需要開通微信認(rèn)證,微信認(rèn)證為300元,設(shè)置——》微信認(rèn)證——》開通)
6. openid和unionid區(qū)別
openid:用戶唯一標(biāo)識,請注意,在未關(guān)注公眾號時(shí),用戶訪問公眾號的網(wǎng)頁,也會產(chǎn)生一個(gè)用戶和公眾號唯一的openId
unionid:如果開發(fā)者擁有多個(gè)移動應(yīng)用、網(wǎng)站應(yīng)用和公眾帳號,可通過獲取用戶基本信息中的unionid來區(qū)分用戶的唯一性,因?yàn)橥挥脩?,對同一個(gè)微信開放平臺下的不同應(yīng)用(移動應(yīng)用、網(wǎng)站應(yīng)用和公眾帳號),unionid是相同的
(PS:即如果你只是使用一種登錄方式,或者微信瀏覽器登錄,或掃碼登錄,使用openid即可。但是你即要使用微信在微信瀏覽器里登錄,又要在掃碼登錄的話,那就需要使用unionid為確定用戶的唯一。因?yàn)楣娖脚_的openid和開放平臺的openid是不一樣的。)
7. 微信開放平臺配置
管理中心——》公眾賬號/小程序——》綁定公眾賬號/小程序

(PS:綁定公眾平臺賬號后,會出現(xiàn) unionid,)
8. 微信開放平臺授權(quán)回調(diào)域名配置
綁定以后,點(diǎn)擊查看,在最下面會有,開發(fā)信息——》授權(quán)回調(diào)域

9. AppID 和 AppSecret
微信公眾平臺與微信開放平臺的接口文檔是不一樣的,所以要找到每個(gè)平臺的對應(yīng)的文檔,所以兩個(gè)平臺的AppID 和 AppSecret也是不一樣的。
8. 微信接口內(nèi)回調(diào)鏈接地址(redirect_uri)
redirect_uri:請使用urlEncode對鏈接進(jìn)行處理
9. 其它注意事項(xiàng)
在用戶修改微信頭像后,舊的微信頭像URL將會失效,因此開發(fā)者應(yīng)該自己在獲取用戶信息后,將頭像圖片保存下來,避免微信頭像URL失效后的異常情況。
原文鏈接:Dennis`s blog