本质上企业微信小程序是微信小程序的一个扩展子集,微信小程序的大部分能力都可以在企业微信上运行,同时企业微信扩展了部分和企业相关的能力以满足更多的场景需求。所以一个小程序如果需要同时运行在微信和企业微信端,对于开发者来说需要针对企业微信的环境适配部分不兼容的能力,针对微信环境适配企业微信专有的部分接口能力。

    如何获取环境变量可参考文档:

    由于目前企业微信和微信之间的消息可以互通,使得互通消息中的小程序可以天然的运行在微信和企业微信两个运行环境中。默认情况下,按照微信已有的流程开发的小程序可以直接在两个运行环境中运行,但是如果小程序有调用企业微信的专有接口,如获取员工相关的信息,那么此小程序需要在企业微信管理端进行一次绑定关联操作(一个小程序可绑定多个企业),了解详细步骤

    企业微信允许多个企业关联同一个小程序,但是开发者在开发过程中需要注意以下几点:

    • 小程序被关联到多个企业即会有多组[CorpId, Secret],开发者可以使用任意起一个企业的[CorpId, Secret]获取access_token
    • 使用获取到的access_token和code参数调用
    • 判断返回的用户CorpId和access_token与第一步中的CorpId是否一致,如果不一致,则调用wx.qy.login重新进行一遍登录流程,此时使用返回的[CorpId, Secret]来调用jscode2session接口
    • 如果没有使用这种流程,调用企业微信通讯录相关的接口时,会报错 “not allow to cross corp”。
    • 开发者在微信开发者工具生成二维码
    • 开发者使用企业微信扫描二维码打开小程序开发版(需登录关联了该小程序的企业)
    • 点击进入右上角"…"—》点击配置体验版
    • 进入页面选择体验成员后,发送体验邀请

    企业微信的第三方服务商也可以开发小程序,并关联到第三方应用中,发布之后即可通过企业授权安装使用。第三方小程序的登录流程与企业有些差异,详见。

    注:企业开发者请忽略这个章节