为让开发者快速理解开发流程,本篇章展示如何一步步设计一个能与企业后台互动的自建应用。 添加自建应用 登录企业微信管理端应用与小程序应用自建,点击创建应用,设置应用logo、应用名称等信息,创建应用。 创建完成后,在管理端的应用列表里进入该应用,可以看到agentid、secret等信息,这些信息在使用企业微信API时会用到。 创建完成后,该应用会自动出现在可见范围内的成员的企业微信终端上(包括手机端、pc端、微信插件)使用工具调试api 我们已经创建好一个自建应用,且拿到了可用的应用id及secret,如何调用api控制这个应用呢?下面以发消息为例说明如何调试api接口。 调用api的过程,本质上就是发送http请求给企业微信后台,在正式开发前,我们可以使用工具模拟http请求调试api。这里以postman为例(下载地址,使用方法略),当然你也可以使用其它http模拟工具。 发消息api见发送应用消息,可以看到其实就是一个post请求 请求方式:POST(HTTPS) 请求地址:https:qyapi。weixin。qq。comcgibinmessagesend?accesstokenACCESSTOKEN post参数为accesstoken和消息体。 1。获取accesstoken 参考开始开发,accesstoken是应用调用api的凭证,由corpid和corpsecret换取。 请求方式:GET(HTTPS) 请求URL:https:qyapi。weixin。qq。comcgibingettoken?corpidIDcorpsecretSECRET 使用postman发送这样一个GET请求即可得到accesstoken(请把截图中的corpid、corpsecret换为自己的corpid、应用secret) 2。构造消息体 参考发送应用消息,可以发送文本、图片、视频等多种类型的应用消息,这里以最简单的文本消息为例:(注意修改touser、agentid为自己想要的接收者userid列表、应用id){touser:abelzhuZhuShengben,msgtype:text,agentid:1000002,text:{content:我就试一下},safe:0} 3。发送消息 如下图示,以上面两步得到的accesstoken和消息体为参数,在postman中发送post请求即可(红色箭头所指为需要注意的点) 如果发送成功,在接收者的企业微信中的相应应用里,会收到一条文本消息。 实际上,企业微信提供了一套更方便的模拟工具,见开发者工具的接口调试工具。debug模式调用接口 在开发过程中,可能由于你调用的参数有问题,我们的接口会返回errcode,此时你可以在全局错误码说明查阅相应的错误原因。有时候可能根据错误码说明你仍然不知道自己的参数在哪里出错,这时候你可以在接口请求url里加上debug1参数(暂未支持微盘相关接口),之后从接口返回的errmsg复制出hint值,再用以下工具进行查询,我们会返回你请求的完整参数(包括header与body)。 请求示例:https:qyapi。weixin。qq。comcgibinmessagesend?accesstokenACCESSTOKENdebug1 查询页面:https:open。work。weixin。qq。comdevtoolquery 注意:debug模式有使用频率限制,同一个api每分钟不能超过5次,所以在完成调试之后,请记得要去掉debug1参数。使用php版本demo开始开发 为体验以代码的方式调用api的乐趣,下面以php开发语言为例,开发者需有一定的php基础。 从github下载示例代码。可以看到代码结构为: apiAPI接口 datastructureAPI接口需要使用到的一些数据结构 examplesAPI接口的测试用例 README。md srcAPI接口的关键逻辑 callback消息回调的一些方法 config。php基础配置 README。md utils一些基础方法 在apiexample路径下,有个config。php文件,用于配置自己的企业id、应用id等信息。 如下图所示,修改CORPID、APPID、APPSECRET为自己的企业信息。 在apiexample路径下,有个发送消息的示例MessageTest。php,如下图所示,修改touser(发送给的成员id列表)、toparty(发送给的部门id列表)、totag(发送给的标签id列表)等参数为自己的企业的信息。 执行MessageTest。php即完成消息发送(调试期间建议在根目录的config。php文件里,配置DEBUG参数为true,如果有失败,会打印错误信息)。如果发送成功,接收者的应用里会收到一条消息。 使用应用菜单 要实现这样的简单功能:用户点击应用菜单后,展现一个静态网页,告知企业后台系统的内存使用情况。 需要使用Apache搭建企业后台服务,请自行配置好php和Apache环境。部署应用后台 我们需要在自己的服务器维护一个页面。以常用的Apachephp为例,搭建一个简单的企业后台。 在Apache的website目录下,创建一个页面getmemoryusage。php,该文件内容如下:?phpechosystemmemoryusage。memorygetusage()。B;? 页面非常简单,通过系统函数获取内存使用情况,并打印出来。 这个页面的地址为http:ip:portgetmemoryusage。php(如何得到ip、port,请参考Apache文献,此处不详述) 如果有正确配置Apache服务,在当前浏览器里输入http:ip:portgetmemoryusage。php,可以看到页面。 如何让这个页面在企业微信应用中展现呢?配置应用菜单 在管理端进入上面创建好的自建应用,点击自定义菜单项,菜单名自取,菜单内容选跳转到网页,URL填上http:ip:portgetmemoryusage。php,保存并发布,即完成了添加应用菜单的过程。 应用菜单发布后,从企业微信终端进入该应用,可以看到菜单已经更新。点击菜单即可看到企业后台系统的内存使用情况了! 注意,上面的URL在真实使用时必须外网可访问。如果只是用于测试,外网不可访问,那么测试的终端必须与页面所在服务器在同一个网段,或者使用内网穿透工具(如花生壳)。设计更有趣的应用 以上过程只是建立了一个非常简单的应用。企业微信提供了多达近200个api,开发者可以使用这些api实现更多丰富多彩的功能。