Skip to content

资料分享的小应用,挂接微信企业号

Notifications You must be signed in to change notification settings

linys2333/DocShare

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

一些说明

文档、资料分享应用(目前只支持音频类资源),挂接微信企业号

运行前请先在以下文件填写企业号相关信息:

  • \App\src\config.js:wxconfig.appId

  • \Server\config.js:wxconfig.corpid、wxconfig.corpsecret

本地开发需修改默认端口号:

  • \App\config\index.js:dev.port

微信企业号应用开发入坑指南

§ 热身~

1、官方文档

2、参考资料

§ 预备...跳!

1、惯例先上图

进入应用

调用接口

关键关系

2、关键步骤

  • 进入应用
  1. 微信身份验证

    • http://qydev.weixin.qq.com/wiki/index.php?title=身份验证
    • 构造特定请求发送给微信服务器,含身份验证通过后的重定向url(redirect_uri)
    • 微信服务器校验身份通过后,跳转到redirect_uri,会携带一个关键参数code,用于后续获取用户信息
    • 官方文档中的“根据code获取成员信息”,在第6步才用到
  2. 请求access_token

  3. 请求ticket

  4. 全局缓存token和ticket

    • access_token和ticket是与微信接口打交道的重要凭证。由于企业号调用接口有频率限制,为了避免频繁访问微信服务器而做了全局缓存,这也是官方推荐的做法
    • 本来是想存储在session中的,但是试用了几个koa2的session中间件都觉得很麻烦(为了持久化存储需要安装额外的存储介质,比如mysql),索性直接丢在了global全局对象上
  5. 启动定时器更新缓存

    • access_token和ticket的有效期均为7200s即2小时,因此我会每(7200-5)s就请求微信服务器以获取最新值
    • 为什么-5s?提前5s请求也是为了保证这2个参数不过期
  6. 请求用户信息

  • 调用微信接口
  1. 生成签名

  2. 更新wx.config

    • 调用接口前,需通过wx.config注册相关信息,用于检验权限
    • vuex提供了jssdk插件,支持在vue组件内访问wx对象
    • 我测试过调用接口但失败了,应该和可信域名配置有关,暂未解决

3、吐槽大会

  • 可信域名


指不定哪天会停用的我的企业号

二维码

About

资料分享的小应用,挂接微信企业号

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published