新书《微信企业号开发揭秘》已出版,全书采用wechatenterprise框架开发

Engineer-Jsp Engineer-Jsp     2022-12-09     676

关键词:

        新书《微信企业号开发揭秘》已出版,全书基于源码与API逐步讲解,采用WeChatEnterprise框架开发

 

 

纸质书购买地址:  天猫    京东    当当    亚马逊

 

WeChatEnterprise框架源码下载、克隆地址:https://github.com/Mr-Jiang/WeChatEnterprise

开发工具下载地址:http://www.engineer-jsp.cn/download/tools/tools.rar

 

  本书主要介绍关于微信公众平台企业号的开发意义、开发目的及开发过程等,分11章内容详细讲述微信企业号开发环境的搭建、开发工具、接口的开发文档解读和编码实现。每个小节都会介绍对应接口的详细描述、参数意义、参数是否可选的表格、请求的方式、请求的地址、请求的返回结果,然后给出实现代码,而且代码中包含非常清晰的注释,方便读者理解代码的意义。

 

本书适合零基础且不熟悉微信公众平台开发的读者以及企事业单位微信企业号开发从业者、维护人员以及微信开发的爱好者阅读。

微信企业号是微信为企业客户提供的移动服务,旨在为企业提供移动应用入口。它可以帮助企业建立员工、上下游供应链与企业IT系统间的连接。利用企业号,企业或第三方服务商可以快速、低成本地实现高质量的企业移动轻应用,实现生产、管理、协作、运营的移动化。企业号作为企业IT移动化解决方案,相比企业自己开发App具有明显的优势。所以,微信企业号开发已成为很多开发人员的必备技能。

 

一、关于全书目录的介绍

第1章 初识微信企业号     1

1.1 什么是微信企业号        1

1.1.1 学习微信企业号开发的目的与意义         1

1.1.2 微信平台开发前景    2

1.2 注册微信企业号   2

1.3 微信企业号的使用        4

1.3.1 绑定微信    4

1.3.2 登录    4

1.3.3 消息群发    4

1.3.4 通讯录         6

1.3.5 企业应用    6

1.3.6 微信插件    7

1.3.7 管理工具    7

1.3.8 使用分析    8

1.3.9 我的企业    8

1.3.10  API文档    9

1.4 微信企业号认证   9

1.4.1 开始认证    9

1.4.2 微信企业号认证流程         9

1.4.3 认证之后的特权         10

1.5 本章小结        10

第2章 服务器搭建及本地开发环境配置          11

2.1 准备一个服务器   11

2.1.1 阿里云         11

2.1.2 新浪SAE的使用         14

2.1.3 百度BAE的使用         19

2.1.4 三方映射    22

2.1.5 服务器和本地环境搭建所需要的工具/软件   26

2.2 服务器搭建软件的安装和配置   27

2.2.1 搭建软件安装    27

2.2.2 服务器软件配置         29

2.2.3 服务器搭建完毕后的验证测试         31

2.3 本地开发环境配置        32

2.3.1 配置所需安装的软件         32

2.3.2 本地开发环境变量配置    33

2.3.3  Tomcat端口及启动配置   33

2.3.4  MyEclipse开发配置   33

2.4 建立自己的Java项目  35

2.4.1 项目的类型选择及命名    35

2.4.2 项目各个目录及文件的功能与意义         36

2.4.3 项目的编译与部署    36

2.4.4 本地开发环境及服务器搭建完毕后的验证测试    38

2.5 本章小结        42

第3章 建立连接          43

3.1 主动调用        43

3.1.1 主动调用概述    43

3.1.2 获取AccessToken       43

3.1.3 主动调用的频率限制         51

3.1.4 防止AccessToken过期的处理  51

3.2 回调模式        55

3.2.1 回调模式概述    55

3.2.2 使用回调模式所需加解密库下载    55

3.2.3 接收消息的加解密处理    55

3.2.4 编写加解密调用函数         56

3.2.5 项目提交到服务器    60

3.2.6 开启回调模式    63

3.3 代码提交与版本管理   64

3.3.1 关于GIT提交     64

3.3.2 关于SVN提交    65

3.3.3 关于Tomcat Web提交       65

3.3.4 关于Beyond Compare的使用   65

3.4 本章小结        65

第4章 管理通讯录     66

4.1 成员关注企业号   66

4.2 管理部门        69

4.2.1 创建部门    69

4.2.2 更新部门    72

4.2.3 获取部门列表    75

4.2.4 删除部门    77

4.2.5  Post消息结构体封装说明         79

4.3 管理成员        81

4.3.1 创建成员    81

4.3.2 更新成员    84

4.3.3 获取成员    87

4.3.4 获取部门成员    90

4.3.5 获取部门成员详细信息    92

4.3.6 删除成员    95

4.3.7 批量删除成员    97

4.4 管理标签        99

4.4.1 创建标签    99

4.4.2 更新标签    101

4.4.3 删除标签    103

4.4.4 获取标签成员    105

4.4.5 增加标签成员    107

4.4.6 删除标签成员    111

4.4.7 获取标签列表    114

4.5 本章小结        115

第5章 管理素材文件          116

5.1 上传临时素材        116

5.2 获取临时素材        122

5.3 上传永久素材        125

5.3.1 上传永久图文素材    126

5.3.2 上传其他类型永久素材    132

5.4 获取永久素材        137

5.5 删除永久素材        141

5.6 修改永久图文素材        145

5.7 获取素材总数        152

5.8 获取素材列表        154

5.9 上传图文消息内的图片        157

5.10 本章小结      162

第6章 管理企业号应用     163

6.1 获取企业号应用   163

6.2 设置企业号应用   167

6.3 获取应用概括列表        173

6.4 本章小结        176

第7章 接收消息与事件     177

7.1 接收普通消息        177

7.1.1 接收文本消息    177

7.1.2 接收图片消息    190

7.1.3 接收音频消息    191

7.1.4 接收录像消息    192

7.1.5 小视频消息         193

7.1.6 接收位置消息    194

7.1.7 接收link消息     195

7.2 接收事件        197

7.2.1 关注/取消关注事件   197

7.2.2 上报地理位置事件    198

7.2.3 菜单点击事件    199

7.2.4 菜单View事件  200

7.2.5 扫二维码事件    201

7.3 被动响应消息        202

7.3.1 响应文本消息    202

7.3.2 响应图片消息    204

7.3.3 响应音频消息    205

7.3.4 响应视频消息    206

7.3.5 响应图文消息    206

7.4 本章小结        209

第8章 发送消息          210

8.1 发送接口说明        210

8.2 发送类型及数据格式   212

8.2.1  Text文本消息     212

8.2.2  Image图片消息214

8.2.3  Voice音频消息   217

8.2.4  Video录像消息  220

8.2.5  File文件消息      223

8.2.6 文本卡片消息    225

8.2.7  News图文消息  228

8.2.8  MpNews消息     231

8.3 本章小结        235

第9章 自定义菜单     236

9.1 菜单结构代码封装        236

9.2 创建自定义菜单   244

9.3 获取菜单列表        248

9.4 删除菜单        252

9.5 菜单创建异常解决        254

9.6 本章小结        255

第10章 身份验证接口       256

10.1  OAuth验证接口  256

10.1.1 接口说明  256

10.1.2 企业获取Code 257

10.1.3 根据Code获取成员信息         262

10.2  UesrID与OpenID互换接口        264

10.2.1  UesrID转换OpenID接口编程         264

10.2.2  OpenID转换UserID接口编程         267

10.3 二次验证      269

10.4 本章小结      273

第11章 引入第三方开发   274

11.1 接入天气预报      274

11.2 接入快递查询      285

11.3 接入小游戏289

11.4 接入公交查询      291

11.5 接入笑话      296

11.6 智能机器人300

11.7 本章小结      303

附录 全局错误码         304

 

二、关于WeChatEnterprise框架的介绍 

WeChatEnterprise框架是博主亲自操刀写的,整个框架架构非常清晰,无论从协议解析、协议场景层级分发、协议分场景处理与应答、还是消息加解密、IO处理等等,都非常的适用于一些初学者或对项目架构不清晰的小伙伴。

不需要任何CSDN下载积分,到GitHub地址clone代码后,可以直接拿来使用,除JS、移动端以外的接口,本框架基本上覆盖了95%以上的接口讲解与接口封装,并且附带调用方式、代码使用样例,可以从中学习到架构方面的知识,还有消息的请求、封装、解析、IO处理等等。

如果你觉得博主写的代码框架不错并且对你的开发有帮助,请在GitHub的WeChatEnterprise仓库页面的右上角点击“Star”,对我的技术分享进行支持,将是我最大的动力,博主会继续分享更多优质的资源给大家。

 

三、关于WeChatEnterprise框架的包结构介绍

package wx.api

                       ------ 定义了框架的全局常量、全局变量 :请求地址、Token、EncodingAesKey、CorpId、Secret、获取凭证、封装code请求地址等

package wx.app

                       ------ 应用管理 :获取应用、设置应用、获取应用列表

package wx.contact

                       ------ 通讯录管理 :成员管理、部门管理、标签管理

                               1.成员管理 :创建成员、读取(获取)成员、更新成员、删除成员、批量删除成员、获取部门成员、获取部门成员详情、userid to openid、openid to userid、二次验证、邀请成员、获取外部联系人详情

                                2.部门管理 :创建部门、更新部门、删除部门、获取部门列表

                               3.标签管理 :创建标签、更新标签名字、删除标签、获取标签成员、增加标签成员、删除标签成员、获取标签列表

package wx.encryption

                       ------ 消息的加解密校验、请求校验

package wx.media 

                       ------ 素材管理 : 上传临时素材、获取临时素材、上传图片

package wx.menu

                       ------ 自定义菜单 ------ 创建菜单、获取菜单、删除菜单

package wx.msg

                       ------ 基础消息单元类 :文件、照片、MpNews、News、Text、TextCard、Video、Voice

package wx.msg.chat.group

                       ------ 群聊 :创建群聊、修改群聊、获取群聊会话

package wx.msg.push

                     ------- 消息推送:推送文本消息、推送图片消息、推送语音消息、推送视频消息、推送文件消息、推送文本卡片消息、推送news图文消息、推送mpnews消息

package wx.msg.req 

                      ------ 发送(请求)消息:发送文本消息、发送图片消息、发送语音消息、发送视频消息、发送文件消息、发送文本卡片消息、发送news图文消息、发送mpnews消息

package wx.msg.resp

                      ------ 被动响应(response) :响应文本消息、响应音乐消息、响应图片消息、响应音频消息、响应视频消息、响应图文消息

package wx.oauth2 

                       ------ 授权:code换取成员信息、user_ticket换取用户信息

package wx.protocol

                       ------ 协议核心 :协议解析、协议管理、协议分发、协议划分为7大场景、协议层级下发等

package wx.servlet

                       ------ 请求响应入口 : 消息的请求与响应、二次验证、授权登陆、重定向等

package wx.util

                       ------ 工具包 : IO异步与同步阻塞网络请求、核心消息工具类、线程池管理等

 

关于初次开启API接收的使用教程,首先在服务器端安装使用jdk1.6或以上的版本。针对org.apache.commons.codec.binary.Base64,需要导入jar包commons-codec-1.9(或comm ons-codec-1.8等其他版本)

官方下载地址:http://commons.apache.org/proper/commons-codec/download_codec.cgi

异常java.security.InvalidKeyException:illegal Key Size的解决方案:

在官方网站下载JCE无限制权限策略文件(请到官网下载对应的版本, 例如JDK7的下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html ):下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt。
如果安装了JRE,将两个jar文件放到%JRE_HOME% \\lib\\security目录下覆盖原来的文件,如果安装了JDK,将两个jar文件放到%JDK_HOME%\\jre\\lib\\security目录下覆盖原来文件。

执行完以上操作后,进入到微信企业后台,单击“应用与小程序”选项,进入页面后,单击左侧“应用”选项,找到“自建”选项,单击你要开启API接收的自建应用,单击要开启API接收的自建应用后,进入到自建应用的详细页面,找到“接收消息”选项,单击“设置API接收”选项,进入到API接收消息页面,随后编译从博主GitHub上clone下来的代码,将TokenEncodingAesKeyCorpId一并填写在开启API接收消息的web页面内对应的方框,需要注意的是代码里要与API接收消息web页面填写的TokenEncodingAesKeyCorpId必须要全部一致,否则将会失败,然后单击“保存”按钮后即可完成开启API接收,进行后续的消息收发、自定义菜单等接口的操作,默认不勾选上报地理位置、上报进入应用事件,博主也不建议勾选,因为勾选后每次进入应用都要提示,相当的烦人。

关于新书的介绍与开发框架的介绍,到此就介绍完了,如果开发者遇到开发上的问题,可以关注博主的博客、新浪微博等,给博主发送私信,如果有空闲的时间,博主将一一回复,谢谢大家的支持与理解,提前祝大家中秋佳节、国庆佳节出行安全、工作顺利!

新书《微信企业号开发揭秘》已出版,全书采用wechatenterprise框架开发

    新书《微信企业号开发揭秘》已出版,全书基于源码与API逐步讲解,采用WeChatEnterprise框架开发  纸质书购买地址: 天猫  京东  当当  亚马逊 WeChatEnterprise框架源码下载、克隆地址:https://github.com/Mr-Jia... 查看详情

微信企业号开发[一]——创建应用

...面,后续文章中将对填写的URL进行改造4、成功创建后在微信中打开企业号即可看见已创建的应用 [目录][下一篇]微信企业号开发[二]—& 查看详情

《元宇宙工程》新书正式出版已上架京东淘宝等网上商城

当前,元宇宙掀起巨大的浪潮。元宇宙如何脱虚向实,落地应用?如何策划符合项目需求的元宇宙?如何在保证质量的前提下,构建和实施元宇宙工程?这些都是比单纯地理解元宇宙概念要更加有现实意义... 查看详情

我的新书《c++服务器开发精髓》终于出版啦

一、千呼万唤始出来亲爱的各位读者,我的新书《C++服务器开发精髓》终于终于终于与大家见面了,图书如下:图书的封面设计很精美,当然内容一定不负众望。因出版社老师要求提供一张照片放到封面上,今年的6月1日儿童节... 查看详情

我的新书,《第一行代码android第3版》已出版!

《第一行代码——Android》这本书自2014年出版以来,已经过去了6个年头。期间Android系统版本经历了4.0到10.0系统的巨大升级,开发技术也发生了翻天覆地的变化。在2016年的时候,我曾对书中的内容进行了大幅度的更新... 查看详情

我的新书,《第一行代码android第3版》已出版!

《第一行代码——Android》这本书自2014年出版以来,已经过去了6个年头。期间Android系统版本经历了4.0到10.0系统的巨大升级,开发技术也发生了翻天覆地的变化。在2016年的时候,我曾对书中的内容进行了大幅度的更新... 查看详情

4位gnn一线大佬新书出版了!

 Datawhale推荐 推荐人:张钹、周志华、李航等广大图神经网络(GraphNeuralNetwork,下文简称GNN)研究人员翘首以盼、吴凌飞、崔鹏、裴健、赵亮4位GNN领域的中青年影响力学者联合编写《图神经网络:基础、前沿... 查看详情

.net之微信企业号开发企业号人员身份认证与开发

...名密码进行登录的。。。2333但是,这样所就完全失去了微信企业号的意义,本来进入微信企业号的时候,就已经对人员身份进行认证了,你这里再让别人登录,不是显得多余么?于是,需要考虑的是,如何获取微信企业号中用... 查看详情

微信开发者工具调试企业微信页面遇到未绑定企业号开发者的问题

参考技术A微信开发者工具调试企业微信页面遇到未绑定企业号开发者的问题,如图提示。自己已经是企业微信的管理员,确还是有这个问题。网上竟然也找不到答案。解决方法:登录企业微信后台,在连接微信——微工作台,... 查看详情

微信企业号第三方应用开发[四]——用户登录应用

应用被授权方企业号授权后,授权方企业号用户即可以登录应用。至此,接入企业号第三方应用的开发到了最后一步——获取登录用户信息。 在企业号开发中要获取用户信息,需要获取到用户经OAuth2.0验证时生成的code... 查看详情

zabbix企业级分布式监控系统第2版即将出版

经过近一年的写作,博主的Zabbix第二本书籍也写完,目前在出版社编辑中,全书的目录结构如图所示。 查看详情

《元宇宙工程》新书正式出版已上架京东淘宝等网上商城

当前,元宇宙掀起巨大的浪潮。元宇宙如何脱虚向实,落地应用?如何策划符合项目需求的元宇宙?如何在保证质量的前提下,构建和实施元宇宙工程?这些都是比单纯地理解元宇宙概念要更加有现实意义... 查看详情

我的新书《androidapp开发从入门到精通》终于出版啦(代码片段)

前言经过了两年多终于完成了这本书,2016年9月份开始写的,到今天为止2年零2个月,本书的内容大部分是去年完成的,看过我去年总结的读者可能知道,去年事情很多太忙了,导致本命年这本书没有上架&#... 查看详情

微信企业号开发:微信用户信息和web网页的session的关系

   微信企业号的用户是须要验证的,因此能关注企业号的用户事实上就是已经通过验证的用户。但企业应用中打开一个网页,在这个网页中怎样依据微信用户的信息创建web应用中最长使用的session呢?微信用户怎样和we... 查看详情

新书推荐——linux系统管理与服务器配置

新书推荐——Linux系统管理与服务器配置近日,正月十六工作室组编的《Linux系统管理与服务器配置》在电子工业出版社正式出版。图书基于工作过程系统化体例编写,围绕Linux服务管理核心技能要求,引入行业标准、... 查看详情

.net之微信企业号开发回调模式的接口开发

一、前言  微信企业号应用中,有两种模式,一种是普通模式,这种模式只能进行简单网页链接,以及发送固定的消息。为了可以让企业号的用户更好的与应用交互,微信提供了回调模式,这种回调模式的可以将用户发送给微... 查看详情

微信企业号开发[三]——调用微信接口

微信的所有主动调用都需要带上AccessToken,以下我们将讲解如何获取AccessToken 获取AccessTokenAccessToken是企业号的全局唯一票据,调用接口时需携带AccessToken。AccessToken需要用CorpID和Secret来换取,不同的Secret会返回不同的AccessToken... 查看详情

腾讯系:微信,公众号,小程序,企业微信开发知识概括(代码片段)

腾讯系:公众号,小程序,企业微信等等开发知识概括企业微信公众号小程序微信开放平台总结企业微信第三方应用开发(sass服务商):概述:第三方应用接口旨在方便企业微信管理员通过简单的操作来使用第三方服... 查看详情