項目要求做掃描功能前需要進行用戶綁定,不是所有的用戶都能盤點掃描。這就要求先獲取用戶的openid(微信公眾號的用戶唯一憑證),然后與業(yè)務系統(tǒng)的用戶信息進行驗證和綁定。如何獲取用戶的openid在開發(fā)指引中,微信網(wǎng)頁授權章節(jié)里,做了詳細的介紹。獲取用戶信息,需要四步。
成都創(chuàng)新互聯(lián)公司服務項目包括廣靈網(wǎng)站建設、廣靈網(wǎng)站制作、廣靈網(wǎng)頁制作以及廣靈網(wǎng)絡營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關系等,向廣大中小型企業(yè)、政府機構等提供互聯(lián)網(wǎng)行業(yè)的解決方案,廣靈網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務的客戶以成都為中心已經(jīng)輻射到廣靈省份的部分城市,未來相信會繼續(xù)擴大服務區(qū)域并繼續(xù)獲得客戶的支持與信任!
第一步:用戶同意授權,獲取code
第二步:通過code換取網(wǎng)頁授權access_token
第三步:刷新access_token(如果需要)
第四步:拉取用戶信息(需scope為
snsapi_userinfo)
1:用戶同意授權,獲取code
在確保微信公眾賬號擁有授權作用域(scope參數(shù))的權限的前提下(服務號獲得高級接口后,默認擁有scope參數(shù)中的snsapi_base和snsapi_userinfo),引導關注者打開如下頁面:
https://open.weixin.qq.com/connect/oauth3/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
若提示“該鏈接無法訪問”,請檢查參數(shù)是否填寫錯誤,是否擁有scope參數(shù)對應的授權作用域權限。
這里需要注意的事宜:獲取用戶授權的接口屬于高級接口,個人訂閱號是沒有該權限的。
測試公眾號有這個權限
點擊修改,會彈出一個OAuth3.0網(wǎng)頁授權頁面。這里設置授權回調(diào)頁面的域名。
這里特別注意一定不要輸入http://, 只要輸入域名即可。
參數(shù)說明
2:通過code換取網(wǎng)頁授權access_token
首先請注意,這里通過code換取的是一個特殊的網(wǎng)頁授權access_token,與基礎支持中的access_token(該access_token用于調(diào)用其他接口)不同。公眾號可通過下述接口來獲取網(wǎng)頁授權access_token。如果網(wǎng)頁授權的作用域為snsapi_base,則本步驟中獲取到網(wǎng)頁授權access_token的同時,也獲取到了openid,snsapi_base式的網(wǎng)頁授權流程即到此為止。
尤其注意:由于公眾號的secret和獲取到的access_token安全級別都非常高,必須只保存在服務器,不允許傳給客戶端。后續(xù)刷新access_token、通過access_token獲取用戶信息等步驟,也必須從服務器發(fā)起。
請求方法
獲取code后,請求以下鏈接獲取access_token:
https://api.weixin.qq.com/sns/oauth3/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
參數(shù)說明
返回說明
正確時返回的JSON數(shù)據(jù)包如下:
{ "access_token":"ACCESS_TOKEN", "expires_in":7200, "refresh_token":"REFRESH_TOKEN", "openid":"OPENID", "scope":"SCOPE" }
到這里已經(jīng)可以獲取openid了,可以用openid和用戶信息進行綁定。接下來就可以做調(diào)用微信掃一掃的功能了。