利用这段空闲时间调研一下企业微信,今天读了一下官方给的企业微信api,总结了一下企业微信的小程序开发和微信小程序开发的区别。
本质上企业微信小程序是微信小程序的一个扩展子集,两者之间可以互通消息,已经成熟的微信小程序只需要简单的配置就可以在企业微信中运行,微信小程序支持的大部分功能,都可以在企业微信上运行,同时企业微信针对企业相关的能力扩展了更多的场景需求,两者开发工具相同,两端都可以访问,个别针对企业微信开放的api(wx.qy)需要开发者通过判断当前终端来实现。
1.当小程序在微信端运行时,通过登录接口获取到的微信个人用户信息;
2.当小程序在企业微信端运行时,通过对应的登录接口获取到企业微信用户企业员工身份信息。
这部分差异需要开发者对小程序进行一定的适配,具体相关的接口见企业微信端登录接口。
开发者可以通过调用异步接口 wx.getSystemInfo 或者同步接口 wx.getSystemInfoSync 获取,在企业微信运行时,会额外返回一个environment字段并赋值为 “wxwork”,在微信里面运行时则不返回该字段。建议开发者在小程序的app.js里面对环境变量进行捕获并作为全局变量进行缓存。
开发者工具插件支持
在官方的企业微信api中查阅开发者工具支持板块的时候,发现官方给出的步骤是在 选择工具-插件菜单
中选择安装企业微信小程序的模拟器插件,但是我下载的1.03.200609版本开发工具中发现没有对应的菜单项,后来发现可在设置-扩展设置-模拟器插件
中安装
此时就可以切换
企业微信小程序模式
企业内部应用和第三方应用的使用场景
内部应用、第三方应用都可以使用小程序或者网页应用使用小程序应用,小程序需要先在微信平台上线;
内部应用:
1.自己公司开发给自己用
2.接受客户公司委托其开发,需要客户自建应用并提供开发信息为其定制开发
3.已经开发好程序供给多公司使用入Saas应用,客户需要自建应用并提供开发信息配置直接使用
4.企业微信内部应用,此类别一般api统一,
5.政务微信内部应用,实现企业微信的私有化部署,购买他的服务之后,可以把企业微信的api部署到私有服务上,那api就不是公用的api了
第三方应用:
就是说我们开发好了一个应用多个公司可以使用,上线以后可以让客户按照这个应用,我们上架之后,微信应该市场中就可以看到,但是发布到应用市场特别难,因为流程特别复杂,首先申请成为服务商,开发应用提交审核,应用上线,共创测试等步骤,最后应用上架,上架后客户即可通过自由渠道安装使用,(可生产推广二维码或者生产安装链接),上架比较复杂
企业内部应用和第三方应用接入方式
企业微信提供了通讯录管理、外部联系人管理、应用管理、消息推送、身份验证、移动端SDK、素材、OA数据接口、企业支付、电子发票等API,管理员可以使用这些API,为企业接入更多个性化的办公应用。
添加自建应用
登录企业微信管理端 -> 应用与小程序 -> 应用 -> 自建,点击“创建应用”,设置应用logo、应用名称等信息,创建应用。
创建应用.jpg 创建完成后,在管理端的应用列表里进入该应用,可以看到agentid、secret等信息,这些信息在使用企业微信API时会用到。 应用.jpg
创建完成后,该应用会自动出现在可见范围内的成员的企业微信终端上(包括手机端、pc端、微工作台)
corpid、secret、agentid三个参数是用来做微信开发必不可少的
使用工具调试api
请求URL:https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET
使用我们创建好的企业id 和应用密码替换url中的ID和SECRET,get请求成功后即可得到access_token
请求方式:POST(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN
debug模式调用接口
在开发过程中,可能由于你调用的参数有问题,我们的接口会返回errcode, 此时你可以在“全局错误码说明”查阅相应的错误原因。有时候可能根据错误码说明你仍然不知道自己的参数在哪里出错,这时候你可以在接口请求url里加上debug=1参数(暂未支持微盘相关接口),之后从接口返回的errmsg复制出hint值,再用以下工具进行查询,我们会返回你请求的完整参数(包括header与body)
请求示例:https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=ACCESS_TOKEN&debug=1
查询页面:https://open.work.weixin.qq.com/devtool/query
网友评论