如果做自己企业的应用跟企业微信结合,那么自定义消息推送功能应该是最可能用到的功能了。
作为一个前端开发人员来理解下企业微信的开发步骤与思路,总结如下,可能也有理解偏差还望指出。
完成消息推送这些功能的前提是已有自己的项目跟企业微信对接完成。作为企业微信的第三方应用。
www.xxxxx.com 是为公司apache的外网映射域名。作为保护不写出来。
1.https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxb1e34043218fc944&redirect_uri=http%3A%2F%2Fwww.xxxxx.com%3A49999%2Finfo%2FpreMossYearBill.do&response_type=code&scope=snsapi_userinfo&agentid=6&state=#wechat_redirect
根据企业微信授权地址把appid跟code去换openid。这里重定向地址是后端的接口,接口作用是为了获取转换来的openid。
2.http://www.xxxxx.com:49999/wechat/#/bill?openid=KfdTyog%2Fw80ygHe1RPmQztUi14kjbre7WR1mLDAGsvo%3D&ramdomid=7e0b4581705345f79b91f18d3bf93333&uid=bac4bc4081924151b877ce17ae11d702&keeptime=1514545062793
这第二步是后端重定向后的页面地址,在第一步的接口中根据获取到的openid作为参数,以及页面需要用到的参数来传递到apache下/wechat/目录下的bill页面,这个页面就是消息展示的页面。http://www.xxxxx.com:49999/wechat/#/bill
这段的配置需要在后端有个weixin.property文件中配置,用于跟企业微信的配置映射。
weixin.property文件内容大致如下,仅供参考。
m.wxdeveloper.xxxxx300=false
m.corpId.xxxxx300=wxb1e34043218fc943
m.corpSecret.xxxxx300=6tW_X9qDhwrqmjwkkgDHPtWJlUSn-BUU-CgTUZ6kFms
m.agentId.xxxxx300=4
m.token.xxxxx300=BPjPN
m.aesKey.xxxxx300=mVWRwCXVrRbV4PYqZs3cKCqPWUUgKtS3emkh5ysPMns
m.oauth2redirectUri.xxxxx300=http\://www.xxxxx.com\:49999/m/weixin/login.do
m.wxMobileIndex.xxxxx300=http\://www.xxxxx.com\:49999/wechat/\#/homeTabs
m.wxMobileSubIndex.xxxxx300=http\://www.xxxxx.com\:49999/wechat/\#/
m.domain.xxxxx300=http\://www.xxxxx.com\:49999/
三. 根据跳转的页面地址。在页面对应的控制器中获取openid来判别是否有这用户,然后再根据传过来的其他参数调用页面获取数据的接口把参数传进去来获取数据。
我这边是用ionic1.x + angularjs1.x版本的前端框架来实现的。