目录
前言
企业微信是腾讯公司推出的一款面向企业的通讯和办公工具,它结合了企业内部沟通与管理需求,同时融入了微信的生态能力。以下是对企业微信的具体介绍:
- 内外沟通:企业微信提供了与个人微信相似的沟通体验,使得员工可以零成本上手,用熟悉的方式进行工作交流。同时,企业微信支持添加客户的微信,实现在单聊、群聊中的沟通,以及通过朋友圈、视频号等形式与客户进行互动。
- 办公应用:企业微信拥有丰富的OA(Office Automation,办公自动化)应用,这些应用可以帮助企业管理日常的工作流程,如审批、考勤、报销等,提高工作效率。
- 连接能力:企业微信能够连接企业的内部员工、生态伙伴以及消费者,帮助企业构建起一个全面的通信和办公网络。
- 功能丰富:企业微信包含了内部群、外部群、群发消息、个人号/社群自动化功能、企业号、小程序和企业微信支付等多个功能,这些功能可以帮助企业更好地运营和触达用户。
- 安全保障:企业微信具有全面的安全保障措施,包括国际权威认证和银行级别的数据加密技术,确保企业数据的安全性。
- 开放平台:企业微信还提供了开放的平台能力,允许企业根据自身需求开发和集成第三方应用,以实现更多定制化的办公和管理功能。
企业微信是一个集沟通、协作、管理和安全于一体的企业级应用,它不仅能够帮助企业内部员工高效协同工作,还能够帮助企业与客户建立更紧密的联系,提升企业的运营效率和管理水平。
企微API官网说明
1.首先,你必须将小程序关联到企微的自建应用中,小程序关联企微自建应用的步骤就不在这里进行说明了,网上有教程,步骤很简单。
2.然后,这个自建应用设置的可见范围,就是你能获取人员信息的范围,是无法获取看不见这个应用的部门的人员信息的(如果想要获取全集团的人员信息,就得设置这个应用为全集团可见)
3.你得照自己公司企微管理员要企业id和自建应用密钥(当然,你自己是管理员那就直接自己取复制就行)
获取代码
一:获取access_token
获取access_token是调用企业微信API接口的第一步,相当于创建了一个登录凭证,其它的业务API接口,都需要依赖于access_token来鉴权调用者身份
获取access_token - 企业微信API (qq.com)
getTokenForUserList() {
console.log("==============获取token==============");
wx.request({
url: "https://qyapi.weixin.qq.com/cgi-bin/gettoken",
method: "get",
data: {
corpid: "xxxxxxxx", //企微id
corpsecret: "xxxxxxxxx", //自建应用的密钥
},
success: (res) => {
console.log("==============打印token==============");
console.log(res.data.access_token);
// 因为这里的success方法用的箭头函数,才能直接使用this来指向方法,如果是ES5语法,在方法里用this会有指向性错误,就需要现在外部声明that=this
this.getUserList(res.data.access_token); //把拿到的token给另一个方法
},
fail: function (err) {
console.log(err);
},
});
},
注意:我这里了只是方便测试,所以将access_token返回到前端直接使用,实际开发中,为了安全考虑,开发者请勿将access_token返回给前端,需要开发者保存在后台,所有访问企业微信api的请求由后台发起
二:使用企微API获取部门成员信息
getUserList(cjAccess_token) {
console.log("==============获取成员信息列表==============");
/**
* https://qyapi.weixin.qq.com/cgi-bin/user/simplelist ===》只是获取基础信息
* 想要获取企微人员详细信息(包含电话、职位、地址、性别、邮箱等等),要是另一个请求地址:
* https://qyapi.weixin.qq.com/cgi-bin/user/list ==》参数和上面地址的一样
* */
wx.request({
url: "https://qyapi.weixin.qq.com/cgi-bin/user/simplelist",
method: "get",
data: {
access_token: cjAccess_token,
department_id: "3", //要获取的部门id==》可通过企微管理员后台【通讯录】查看对应部门的id
fetch_child: "1", //是否递归获取下级部门人员信息 ===》0就表示不获取子部门人员信息
},
success: function (res) {
/**
* 注意,要想成功获取指定部门的成员信息,必须在企微中设置此应用的可见范围,
* 因为只能获取到这个应用可见范围内的部门人员信息
*
* userlist: Array(20)
0: {userid: "zhangs", name: "张三", department: Array(1)}
1: {userid: "ls", name: "李四", department: Array(1)}
3: {userid: "wangw", name: "王五", department: Array(1)}
4: {userid: "zhaos", name: "赵四", department: Array(1)}
department: [52] 部门id
name: "赵四" 人员名称
userid: "zhaos" 这个人在企微中的userid
....
注意:即使选择的部门很大,包含多个子部门,返回的userlist也是把拿到的所有人混合在一块的数组
只是可以通过department来判断所属部门
*/
console.log("==============打印成员信息列表==============");
console.log(res);
},
fail: function (err) {
console.log(err);
},
});
},
获取成员的详细信息
想要拿到成员的详细信息,只需要换个接口就行,参数都不用变
获取企微人员详细信息(包含电话、职位、地址、性别、邮箱等等),的请求地址:https://qyapi.weixin.qq.com/cgi-bin/user/list ===>get请求,参数和上面一样,直接替换url就行
博主 [DTcode7] 带您 溺亖在知识的海洋里,嘿嘿嘿.~
🐒 个人主页—— DTcode7 的博客🐒《微信小程序相关博客》
《Vue相关博客》
《前端开发习惯与小技巧相关博客》
《AIGC相关博客》《photoshop相关博客》
😚 吾辈才疏学浅,摹写之作,恐有瑕疵。望诸君海涵赐教。望轻喷,嘤嘤嘤 🙈
🕍 愿斯文对汝有所裨益,纵其简陋未及渊博,亦足以略尽绵薄之力。倘若尚存阙漏,敬请不吝斧正,俾便精进!