.NET Core實(shí)現(xiàn)企業(yè)微信獲取部門成員
1.獲取部門成員
請求方式:GET(HTTPS)
請求地址:https://qyapi.weixin.qq.com/cgi-bin/user/simplelist?access_token=ACCESS_TOKEN&department_id=DEPARTMENT_ID&fetch_child=FETCH_CHILD
參數(shù)說明:
| 參數(shù) | 必須 | 說明 |
|---|---|---|
| access_token | 是 | 調(diào)用接口憑證 |
| department_id | 是 | 獲取的部門id |
| fetch_child | 否 | 是否遞歸獲取子部門下面的成員:1-遞歸獲取,0-只獲取本部門 |
權(quán)限說明:
應(yīng)用須擁有指定部門的查看權(quán)限。
返回結(jié)果:
{
"errcode": 0,
"errmsg": "ok",
"userlist": [
{
"userid": "zhangsan",
"name": "張三",
"department": [1, 2],
"open_userid": "xxxxxx"
}
]
}參數(shù)說明:
| 參數(shù) | 說明 |
|---|---|
| errcode | 返回碼 |
| errmsg | 對返回碼的文本描述內(nèi)容 |
| userlist | 成員列表 |
| userid | 成員UserID。對應(yīng)管理端的帳號 |
| name | 成員名稱,代開發(fā)自建應(yīng)用需要管理員授權(quán)才返回;此字段從2019年12月30日起,對新創(chuàng)建第三方應(yīng)用不再返回真實(shí)name,使用userid代替name,2020年6月30日起,對所有歷史第三方應(yīng)用不再返回真實(shí)name,使用userid代替name,后續(xù)第三方僅通訊錄應(yīng)用可獲取,未返回名稱的情況需要通過通訊錄展示組件來展示名字 |
| department | 成員所屬部門列表。列表項(xiàng)為部門ID,32位整型 |
| open_userid | 全局唯一。對于同一個(gè)服務(wù)商,不同應(yīng)用獲取到企業(yè)內(nèi)同一個(gè)成員的open_userid是相同的,最多64個(gè)字節(jié)。僅第三方應(yīng)用可獲取 |
2.代碼示例
獲取Token方法見 http://m.fzitv.net/article/245491.htm
2.1 appsetting截圖

2.2 返回值實(shí)體
public class GetUserByDepartmentResult
{
/// <summary>
/// 錯(cuò)誤編號
/// </summary>
public int errcode { get; set; }
/// <summary>
/// 錯(cuò)誤信息
/// </summary>
public string errmsg { get; set; }
/// <summary>
/// 用戶集合
/// </summary>
public List<UserList> userlist { get;set;}
}
public class UserList
{
/// <summary>
/// 用戶ID
/// </summary>
public int userid { get; set; }
/// <summary>
/// 名稱
/// </summary>
public int name { get; set; }
/// <summary>
/// 部門列表
/// </summary>
public string[] department { get; set; }
}2.3 獲取部門信息方法
/// <summary>
/// 獲取用戶通過部門id
/// </summary>
/// <param name="token">企業(yè)微信Token</param>
/// <param name="department_id">部門id</param>
/// <returns></returns>
public static GetUserByDepartmentResult GetUserByDepartment(string token,int department_id)
{
//構(gòu)造請求鏈接
var requestBuild = GlobalContext.Configuration["Wx:GetUserByDepartment"];
requestBuild = string.Format(requestBuild, token, department_id);
using (var wxClient = GlobalContext.httpClientFactory.CreateClient("WxClient"))
{
var httpResponse = wxClient.GetAsync(requestBuild).Result;
var result= JsonConvert.DeserializeObject<GetUserByDepartmentResult>(
httpResponse.Content.ReadAsStringAsync().Result
);
return result;
}
}2.4 調(diào)用(作為下拉被調(diào)用)
public List<UserList> GetUserByDepartment()
{
List<UserList> userLists = new List<UserList>();
var (token, issuccess) = ApplicationContext.GetToken();
var result = ApplicationContext.GetUserByDepartment(token, 334);
if(result.errcode == 0)
{
userLists = result.userlist;
}
return userLists;
}到此這篇關(guān)于.NET Core實(shí)現(xiàn)企業(yè)微信獲取部門成員的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
ASP.NET MVC HttpPostedFileBase文件上傳的實(shí)例代碼
這篇文章主要介紹了ASP.NET MVC HttpPostedFileBase文件上傳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-07-07
ASP.NET JSON字符串與實(shí)體類的互轉(zhuǎn)換示例代碼
本篇文章主要是對ASP.NET JSON字符串與實(shí)體類的互轉(zhuǎn)換的示例代碼進(jìn)行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01
在?.NET?中使用?FixedTimeEquals?應(yīng)對計(jì)時(shí)攻擊的例子
在計(jì)算機(jī)安全中,計(jì)時(shí)攻擊(Timing attack)是旁道攻擊 (Side-channel attack) 的一種,而旁道攻擊是根據(jù)計(jì)算機(jī)處理過程發(fā)出的信息進(jìn)行分析,這篇文章主要介紹了在?.NET?中使用?FixedTimeEquals?應(yīng)對計(jì)時(shí)攻擊,需要的朋友可以參考下2022-06-06
ASP.NET Core Web App應(yīng)用第三方Bootstrap模板的方法教程
這篇文章主要給大家介紹了關(guān)于ASP.NET Core Web App應(yīng)用第三方Bootstrap模板的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起看看吧2018-06-06
如何使用Microsoft.Extensions.AI簡化.NET中的AI集成
Microsoft.Extensions.AI是一個(gè)創(chuàng)新的?.NET?庫,它為平臺開發(fā)人員提供了一個(gè)內(nèi)聚的?C#?抽象層,簡化了與大型語言模型(LLMs)和嵌入等AI服務(wù)的交互,本文給大家介紹如何使用Microsoft.Extensions.AI簡化.NET中的AI集成,感興趣的朋友一起看看吧2024-11-11
ASP.NET Sql Server安裝向?qū)В╝spnet_regsql.exe)錯(cuò)誤解決一例
這個(gè)程序是注冊網(wǎng)站的數(shù)據(jù)庫,從而提供Membership , Role , Profile 等等諸多功能和管理權(quán)限的控件的使用。2010-03-03

