微信公眾平臺授權登入(java版)
微信公眾平臺授權登入獲取使用者openid。
微信公眾平臺地址:https://mp.weixin.qq.com/
微信平臺配置:
2、修改配置
2.1 業務域名配置
JS介面安全域名、網頁授權域名 同理操作就可以了,正常操作業務域名就完成了,剩下兩個步驟直接配置域名就可以了,如果有其他業務需求,就自己研究吧。
-----------------------------------------------------配置結束-----------------------------------------------------
3、具體實現程式碼:
網頁開啟地址
https://open.weixin.qq.com/connect/oauth2/authorize?appid=appid&redirect_uri=redirect_uri&response_type=code&scope=snsapi_login&state=123#wechat_redirect
引數說明:
appid: 第二步提到的appid
redirect_uri:登入後回掉地址(請使用urlEncode對連結進行處理)
scope:
snsapi_login (獲取基本資訊,需要的openid就夠了)
4.2 微信回撥域名處理
地址:https://api.weixin.qq.com/sns/oauth2/access_token?appid=appid&secret=secret&code=code&grant_type=authorization_code
引數說明:
appid: 第二步提到的appid
secret: 第二步提到的secret
code:微信回撥時候會傳會該引數,直接使用就可以了
返回內容(json):
- { "access_token": "",
- "expires_in": 7200,
- "refresh_token": "",
- "openid": "",
- "scope": "",
- "unionid": ""
- }
access_token:獲取使用者詳細資訊會使用到的
refresh_token:重新整理token,因為access_token會有expires_in的過期時效,可以使用重新整理
重新整理地址:https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=APPID&grant_type=refresh_token&refresh_token=REFRESH_TOKEN
openid:登入使用者openid
unionid:unionid
4.3 獲取登入使用者詳細資訊
地址:http:GET(請使用https協議) https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
引數說明:
access_token: 上一步獲取的access_token,
openid : 使用者的opneid,
返回內容就會有一些想要的內容,頭像地址,性別,暱稱。
補充說明:
微信開放平臺網頁登入獲取openid 和 微信公眾平臺(服務號)獲取的openid 是不一致的,如果要在微信公眾平臺裡做事情
比如推送訊息,必須使用微信公眾平臺的授權登入方式。
以上所有程式碼都是經過測試,並且通過的。放心使用。轉載請註明出處。