微信公眾號UnionId機制


獲取用戶基本信息(UnionID機制)

獲取用戶基本信息(UnionID機制)

在關注者與公眾號產生消息交互后,公眾號可獲得關注者的OpenID(加密后的微信號,每個用戶對每個公眾號的OpenID是唯一的。對於不同公眾號,同一用戶的openid不同)。公眾號可通過本接口來根據OpenID獲取用戶基本信息,包括昵稱、頭像、性別、所在城市、語言和關注時間。

請注意,如果開發者有在多個公眾號,或在公眾號、移動應用之間統一用戶帳號的需求,需要前往微信開放平台(open.weixin.qq.com)綁定公眾號后,才可利用UnionID機制來滿足上述需求。

UnionID機制說明:

開發者可通過OpenID來獲取用戶基本信息。特別需要注意的是,如果開發者擁有多個移動應用、網站應用和公眾帳號,可通過獲取用戶基本信息中的unionid來區分用戶的唯一性,因為只要是同一個微信開放平台帳號下的移動應用、網站應用和公眾帳號,用戶的unionid是唯一的。換句話說,同一用戶,對同一個微信開放平台下的不同應用,unionid是相同的。

獲取用戶基本信息(包括UnionID機制)

開發者可通過OpenID來獲取用戶基本信息。請使用https協議。

接口調用請求說明
http請求方式: GET
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN

參數說明

參數 是否必須 說明
access_token 調用接口憑證
openid 普通用戶的標識,對當前公眾號唯一
lang 返回國家地區語言版本,zh_CN 簡體,zh_TW 繁體,en 英語

返回說明

正常情況下,微信會返回下述JSON數據包給公眾號:

{
"subscribe": 1,
"openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
"nickname": "Band",
"sex": 1,
"language": "zh_CN",
"city": "廣州",
"province": "廣東",
"country": "中國",
"headimgurl":"http://thirdwx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
"subscribe_time": 1382694957,
"unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
"remark": "",
"groupid": 0,
"tagid_list":[128,2],
"subscribe_scene": "ADD_SCENE_QR_CODE",
"qr_scene": 98765,
"qr_scene_str": ""
}

參數說明

參數 說明
subscribe 用戶是否訂閱該公眾號標識,值為0時,代表此用戶沒有關注該公眾號,拉取不到其余信息。
openid 用戶的標識,對當前公眾號唯一
nickname 用戶的昵稱
sex 用戶的性別,值為1時是男性,值為2時是女性,值為0時是未知
city 用戶所在城市
country 用戶所在國家
province 用戶所在省份
language 用戶的語言,簡體中文為zh_CN
headimgurl 用戶頭像,最后一個數值代表正方形頭像大小(有0、46、64、96、132數值可選,0代表640*640正方形頭像),用戶沒有頭像時該項為空。若用戶更換頭像,原有頭像URL將失效。
subscribe_time 用戶關注時間,為時間戳。如果用戶曾多次關注,則取最后關注時間
unionid 只有在用戶將公眾號綁定到微信開放平台帳號后,才會出現該字段。
remark 公眾號運營者對粉絲的備注,公眾號運營者可在微信公眾平台用戶管理界面對粉絲添加備注
groupid 用戶所在的分組ID(兼容舊的用戶分組接口)
tagid_list 用戶被打上的標簽ID列表
subscribe_scene 返回用戶關注的渠道來源,ADD_SCENE_SEARCH 公眾號搜索,ADD_SCENE_ACCOUNT_MIGRATION 公眾號遷移,ADD_SCENE_PROFILE_CARD 名片分享,ADD_SCENE_QR_CODE 掃描二維碼,ADD_SCENEPROFILE LINK 圖文頁內名稱點擊,ADD_SCENE_PROFILE_ITEM 圖文頁右上角菜單,ADD_SCENE_PAID 支付后關注,ADD_SCENE_OTHERS 其他
qr_scene 二維碼掃碼場景(開發者自定義)
qr_scene_str 二維碼掃碼場景描述(開發者自定義)

錯誤時微信會返回錯誤碼等信息,JSON數據包示例如下(該示例為AppID無效錯誤):

{"errcode":40013,"errmsg":"invalid appid"}

批量獲取用戶基本信息

開發者可通過該接口來批量獲取用戶基本信息。最多支持一次拉取100條。

接口調用請求說明

http請求方式: POST
https://api.weixin.qq.com/cgi-bin/user/info/batchget?access_token=ACCESS_TOKEN

POST數據示例

{
"user_list": [
{
"openid": "otvxTs4dckWG7imySrJd6jSi0CWE",
"lang": "zh_CN"
},
{
"openid": "otvxTs_JZ6SEiP0imdhpi50fuSZg",
"lang": "zh_CN"
}
]
}

參數說明

參數 是否必須 說明
openid 用戶的標識,對當前公眾號唯一
lang 國家地區語言版本,zh_CN 簡體,zh_TW 繁體,en 英語,默認為zh-CN

返回說明

正常情況下,微信會返回下述JSON數據包給公眾號(示例中為一次性拉取了2個openid的用戶基本信息,第一個是已關注的,第二個是未關注的):

{
"user_info_list": [
{
"subscribe": 1,
"openid": "otvxTs4dckWG7imySrJd6jSi0CWE",
"nickname": "iWithery",
"sex": 1,
"language": "zh_CN",
"city": "揭陽",
"province": "廣東",
"country": "中國",

"headimgurl": "http://thirdwx.qlogo.cn/mmopen/xbIQx1GRqdvyqkMMhEaGOX802l1CyqMJNgUzKP8MeAeHFicRDSnZH7FY4XB7p8XHXIf6uJA2SCunTPicGKezDC4saKISzRj3nz/0",

"subscribe_time": 1434093047,
"unionid": "oR5GjjgEhCMJFyzaVZdrxZ2zRRF4",
"remark": "",

"groupid": 0,
"tagid_list":[128,2],
"subscribe_scene": "ADD_SCENE_QR_CODE",
"qr_scene": 98765,
"qr_scene_str": ""

},
{
"subscribe": 0,
"openid": "otvxTs_JZ6SEiP0imdhpi50fuSZg"
}
]
}

參數說明

參數 說明
subscribe 用戶是否訂閱該公眾號標識,值為0時,代表此用戶沒有關注該公眾號,拉取不到其余信息,只有openid和UnionID(在該公眾號綁定到了微信開放平台賬號時才有)。
openid 用戶的標識,對當前公眾號唯一
nickname 用戶的昵稱
sex 用戶的性別,值為1時是男性,值為2時是女性,值為0時是未知
city 用戶所在城市
country 用戶所在國家
province 用戶所在省份
language 用戶的語言,簡體中文為zh_CN
headimgurl 用戶頭像,最后一個數值代表正方形頭像大小(有0、46、64、96、132數值可選,0代表640*640正方形頭像),用戶沒有頭像時該項為空。若用戶更換頭像,原有頭像URL將失效。
subscribe_time 用戶關注時間,為時間戳。如果用戶曾多次關注,則取最后關注時間
unionid 只有在用戶將公眾號綁定到微信開放平台帳號后,才會出現該字段。
remark 公眾號運營者對粉絲的備注,公眾號運營者可在微信公眾平台用戶管理界面對粉絲添加備注
groupid 用戶所在的分組ID(暫時兼容用戶分組舊接口)
tagid_list 用戶被打上的標簽ID列表
subscribe_scene 返回用戶關注的渠道來源,ADD_SCENE_SEARCH 公眾號搜索,ADD_SCENE_ACCOUNT_MIGRATION 公眾號遷移,ADD_SCENE_PROFILE_CARD 名片分享,ADD_SCENE_QR_CODE 掃描二維碼,ADD_SCENEPROFILE LINK 圖文頁內名稱點擊,ADD_SCENE_PROFILE_ITEM 圖文頁右上角菜單,ADD_SCENE_PAID 支付后關注,ADD_SCENE_OTHERS 其他
qr_scene 二維碼掃碼場景(開發者自定義)
qr_scene_str 二維碼掃碼場景描述(開發者自定義)

錯誤時微信會返回錯誤碼等信息,JSON數據包示例如下(該示例為AppID無效錯誤):

{"errcode":40013,"errmsg":"invalid appid"}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM