微信公眾平臺開發: 獲取使用者基本資訊
阿新 • • 發佈:2019-02-02
本文介紹如何獲得微信公眾平臺關注使用者的基本資訊,包括暱稱、頭像、性別、國家、省份、城市、語言。
本文的方法將囊括訂閱號和服務號以及自定義選單各種場景,無論是否有高階介面許可權,都有辦法來獲得使用者基本資訊,而無需模擬登入。
在本文中,特別要注意的是有兩個不同的Access Token,他們產生的方式不一樣,一種是使用AppID和AppSecret獲取的access_token,一種是OAuth2.0授權中產生的access_token,方倍工作室分別稱為全域性Access Token和授權Access Token。
一、通過全域性Access Token獲取使用者基本資訊
1. 使用者關注以及回覆訊息的時候,均可以獲得使用者的OpenID
<xml> <ToUserName><![CDATA[gh_b629c48b653e]]></ToUserName> <FromUserName><![CDATA[ollB4jv7LA3tydjviJp5V9qTU_kA]]></FromUserName> <CreateTime>1372307736</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[subscribe]]></Event> <EventKey><![CDATA[]]></EventKey> </xml>
其中的FromUserName就是OpenID
2. 然後使用access_token介面,請求獲得全域性Access Token
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
返回結果:
{ "access_token": "NU7Kr6v9L9TQaqm5NE3OTPctTZx797Wxw4Snd2WL2HHBqLCiXlDVOw2l-Se0I-WmOLLniAYLAwzhbYhXNjbLc_KAA092cxkmpj5FpuqNO0IL7bB0Exz5s5qC9Umypy-rz2y441W9qgfnmNtIZWSjSQ", "expires_in": 7200 }
3. 再使用全域性ACCESS_TOKEN獲取OpenID的詳細資訊
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID
返回如下:
{
"subscribe": 1,
"openid": "oLVPpjqs2BhvzwPj5A-vTYAX4GLc",
"nickname": "刺蝟寶寶",
"sex": 1,
"language": "zh_CN",
"city": "深圳",
"province": "廣東",
"country": "中國",
"headimgurl": "http://wx.qlogo.cn/mmopen/JcDicrZBlREhnNXZRudod9PmibRkIs5K2f1tUQ7lFjC63pYHaXGxNDgMzjGDEuvzYZbFOqtUXaxSdoZG6iane5ko9H30krIbzGv/0",
"subscribe_time": 1386160805
}
至此,獲得使用者的基本資訊。