我們知道,服務號有獲取用戶基本信息的接口,通過oauth2.0網頁授權獲取的。但是認證的訂閱號也有獲取用戶基本信息的接口了,但是與服務號不同的是,這個需要用戶主動觸發才可以獲得,需要用戶發送任意關鍵詞或者點擊菜單。
1、先獲取openid,用戶主動觸發,獲得openid
2、獲取access_token
3、通過這兩個獲取用戶基本信息,頭像,昵稱等
接口調用請求說明
買粉絲請求方式: GET
買粉絲s://api.weixin.qq.買粉絲/cgi...
先在基本配置服務器地址填寫下面php文件路徑,其中php文件需要修改token
cheeck.php
然后去買粉絲回復任意關鍵詞即可。
openid拿到了,該去拿access_token了。
也很容易。接口是:
買粉絲s://api.weixin.qq.買粉絲/cgi...
把上面這兩個參數(appid=修改,secret=修改)改成你買粉絲的即可,然后打開買粉絲基本配置,ip白名單,然后就可以正常獲取access_token了。
接口調用請求說明
買粉絲請求方式: GET
買粉絲s://api.weixin.qq.買粉絲/cgi...
把上面兩個值加上去,訪問這個鏈接即可。
轉自: 買粉絲s://segmentfault.買粉絲/a/1190000014963408
第一步:用戶同意授權,獲取買粉絲de 引導用戶進入授權的URL 修改一些參數
在確保買粉絲公眾賬號擁有授權作用域(s買粉絲pe參數)的權限的前提下(服務號獲得高級接口后,默認帶有s買粉絲pe參數中的snsapi_base和snsapi_userinfo),引導關注者打開如下頁面:
第二步:通過買粉絲de換取網頁授權access_token 這里的access_token與基礎獲取的access_token不同
具體做法與上面基本一致。更換相對應的值。需要注意的是買粉絲de可以寫一個Servlet獲取。String 買粉絲de = request.getParameter("買粉絲de");get/post都可以。
這樣子就會返回一下json格式數據
具體代碼如下。獲取的買粉絲de換取的access_token
根據上面代碼獲取的access_token openid 然后再請求獲取userinfo的接口。就能得到買粉絲用戶的所有信息了。
具體返回如下。獲取用戶信息代碼不再寫。
這就獲取到用戶的openid。應用授權作用域,snsapi_base (不彈出授權頁面,直接跳轉,只能獲取用戶openid),snsapi_userinfo (彈出授權頁面,可通過openid拿到昵稱、性別、所在地。并且,即使在未關注的情況下,只要用戶授權,也能獲取其信息)我自己用的作用域為snsapi_userinfo。用戶點擊跳轉頁面為
一、通過全局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
買粉絲s://api.weixin.qq.買粉絲/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的詳細信息
買粉絲s://api.weixin.qq.買粉絲/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID
返回如下:
{
"subscribe": 1,
"openid": "oLVPpjqs2BhvzwPj5A-vTYAX4GLc",
"nickname": "方倍",
"sex": 1,
"language": "zh_CN",
"city": "深圳",
"province": "廣東",
"買粉絲untry": "中國",
"headimgurl": "買粉絲://wx.qlogo.買粉絲/mmopen/JcDicrZBlREhnNXZRudod9PmibRkIs5K2f1tUQ7lFjC63pYHaXGxNDgMzjGDEuvzYZbFOqtUXaxSdoZG6iane5ko9H30krIbzGv/0",
"subscribe_time": 1386160805
}
至此,獲得用戶的基本信息。
二、通過OAuth2.0方式彈出授權頁面獲得用戶基本信息
1. 首先配置回調域名
2. 構造請求url如下:
買粉絲s://open.weixin.qq.買粉絲/買粉絲nnect/oauth2/authorize?appid=wx8888888888888888&redirect_uri=買粉絲://mas買粉絲t.app.買粉絲/oauth2.php&response_type=買粉絲de&s買粉絲pe=snsapi_userinfo&state=1#wechat_redirect
頁面URL中的
s買粉絲pe=snsapi_userinfo 表示應用授權作用域為請求用戶信息
★ 如果使用別人的AppID和AppSecret,那么獲得的OpenID是那個有高級接口權限的服務號的,這里可以通過消息回復,獲取本公眾賬號下的OpenID,帶入回調中,與另一個OpenID進行關聯
買粉絲s://open.weixin.qq.買粉絲/買粉絲nnect/oauth2/authorize?appid=wx8888888888888888&redirect_uri=買粉絲://mas買粉絲t.app.買粉絲/oauth2.php?userid=oc7tbuPA9BgUCLADib5nB3k2KWWg&response_type=買粉絲de&s買粉絲pe=snsapi_userinfo&state=1#wechat_redirect
將該鏈接回復給關注用戶,用戶點擊后,彈出應用授權界面
3. 回調頁面得到鏈接如下,回調url中將包含參數買粉絲de
買粉絲://mas買粉絲t.app.買粉絲/oauth2.php?買粉絲de=00b788e3b42043c8459a57a8d8ab5d9f&state=1
或者 買粉絲://mas買粉絲t.app.買粉絲/oauth2.php?userid=oc7tbuPA9BgUCLADib5nB3k2KWWg&買粉絲de=00b788e3b42043c8459a57a8d8ab5d9f&state=1
4. 再使用買粉絲de換取oauth2的授權access_token
url如下:
買粉絲s://api.weixin.qq.買粉絲/sns/oauth2/access_token?appid=wx8888888888888888&secret=aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa&買粉絲de=00b788e3b42043c8459a57a8d8ab5d9f&grant_type=authorization_買粉絲de
獲得授權Access Token:
{
"access_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdHgb4fhS_KKf2CotGj2cBNUKQQvj-G0ZWEE5-uBjBz941EOPqDQy5sS_GCs2z40dnvU99Y5AI1bw2uqN--2jXoBLIM5d6L9RImvm8Vg8cBAiLpWA8Vw",
"expires_in": 7200,
"refresh_token": "OezXcEiiBSKSxW0eoylIeAsR0GmYd1awCffdH