个人公众号:后端技术漫谈
Werobot简介
WeRoBot 是一个微信公众号开发框架,采用MIT协议发布。
Werobot文档:https://werobot.readthedocs.org/zh_CN/latest/
我原本是打算在个人订阅号玩一玩自定义开发,因为可以实现很多有趣的功能。
结果弄到自定义菜单的时候居然发现:个人订阅号无法使用自定义菜单开发接口!需要认证!个人订阅号无法使用自定义菜单开发接口!需要认证!个人订阅号无法使用自定义菜单开发接口!需要认证!
然而,个人名义的订阅号无法进行微信认证,所以开发的热情一下子丢了一半。
所以在这里就简短的说一下入门流程,官方文档写的很好,但是入门上感觉写的有不连贯的感觉,在这我就当一个补充教程。
申请公众号
申请公众号是一个必要的步骤,没有什么特别需要注意的地方,不过要清楚不同的公众号类型所拥有的权限是不同的:
![9b34b986d26a76648813d435d9cbe66c.png](https://i-blog.csdnimg.cn/blog_migrate/90e5fa1ed904b7c984e37277b203292a.jpeg)
接口权限
获取开发者ID
取得了公众号后,登录后台,点击“基本配置”,拿到开发者ID和秘钥,底下的服务器配置需要在服务器部署后再进行设置。
![3014ce4481538573c44bdc88afbc1db3.png](https://i-blog.csdnimg.cn/blog_migrate/40777c0b2cddaed7c9b65c0f6467c1c3.jpeg)
获得ID
服务器部署
如果要进行微信的自定义开发,你需要一台后台服务器来接受用户消息,处理消息,最后返回消息给用户。
并且,你的服务器需要有域名,也就是网址,而非IP地址。
我的服务器是亚马逊EC2,当然你也可以用国内的云服务器。
我的域名则是购买的,建议购买国外的服务商,这样得到的域名不需要备案。
根据Werobot文档:你必须有部署的server,基本上云服务器的Linux都自带了一些,所以你可以先写代码,运行时候在观察下是否可以直接部署。
server 支持以下几种:
- cgi
- flup
- wsgiref
- waitress
- cherrypy
- paste
- fapws3
- tornado
- gae
- twisted
- diesel
- meinheld
- gunicorn
- eventlet
- gevent
- rocket
- bjoern
- auto
根据Werobot文档,先试着写一个demo:
![a0338b0d6e63809ebdeeda8d09b35fc2.png](https://i-blog.csdnimg.cn/blog_migrate/fe049fd9446dd2eb8b6edaacb8c1bd44.jpeg)
winscp
源代码:
注意我用的port是8082,我使用了反向代理。
一般来说,如果你的服务器只有一个微信后台服务,请使用80端口!
如果你是https,请使用443端口!
注意到我的token是随机自己设置的,微信规定是3位以上数字字母。之后在填写的服务器配置上用得到。
接着,你可以运行:
python rebot.py
如图,已经运行(最好用screen或者文档说的supervisor保证进程不被杀掉):
![18635ae1083ae927ad4b4affec92e4bb.png](https://i-blog.csdnimg.cn/blog_migrate/e8c9faae674f7dddbd754dbf124e23c6.jpeg)
demo
验证服务器有效性
之后,修改服务器配置,填写你的域名(之前确保你已经做好域名DNS映射!),token=‘yzd’,点击确定,微信会自动发送一个确认信息到你的服务器,一旦成功返回正确结果,验证就成功了。
![52bfbb97392f81f869da5e8b48006db2.png](https://i-blog.csdnimg.cn/blog_migrate/7508e5f072827e0a1ed554515baabe5d.jpeg)
服务器配置
实验效果
现在,你可以用手机给订阅号发消息:
![1713390905bc824676db5eb7a8694af4.png](https://i-blog.csdnimg.cn/blog_migrate/c3a97a1066b424dbce7a2e13958ca5bb.jpeg)
test
补充
最后,贴上我之前写的自定义菜单的源码,由于我是个人订阅号,没有权限,所以返回了48001错误,郁闷…
关注我
我目前是一名后端开发工程师。主要关注后端开发,数据安全,边缘计算等方向。
微信:yangzd1102(请注明来意)
原创博客主要内容
- Java知识点复习全手册
- Leetcode算法题解析
- 剑指offer算法题解析
- SpringCloud菜鸟入门实战系列
- SpringBoot菜鸟入门实战系列
- 爬虫相关技术文章
- 后端开发相关技术文章
个人公众号:后端技术漫谈
![7d60f4441b3669aa9b528055bde18173.png](https://i-blog.csdnimg.cn/blog_migrate/06c0c3da79d95ed254ff368dfd7efda5.jpeg)
如果文章对你有帮助,不妨收藏起来并转发给您的 朋友们~