这里是修真院前端小课堂,每篇分享文从
【背景介绍】【知识剖析】【常见问题】【解决方案】【编码实战】【扩展思考】【更多讨论】【参考文献】
八个方面深度解析前端知识/技能。
今天给大家分享一下,修真院官网JAVA任务10中,深度思考部分的知识点——微信公众号的简单开发
一、背景介绍
复盘项目并不是所有的项目都是我们在任务中做的普通的WEB网站,有的项目是安卓APP,有的项目是需要在微信公众号进行开发,今天我们就简单讲下微信公众号怎么开发
二、知识剖析
微信公众号开发的实质
微信公众号的开发,实质上是一个只能运行在微信内置浏览器上的普通WEB项目,如果不在微信公众号上从菜单进行跳转,是不能正常打开网页的,要么直接提示,要么获取不到数据,而我们项目中使用到微信的功能,就是从微信公众号的自定义菜单跳转到我们的WEB项目上,然后从微信拉取微信的用户信息,如微信昵称、微信头像、用户openid,性别、地址等
微信公众号的分类
分为两个类别,订阅号和服务号,而订阅号和服务号又分为已认证和未认证
在这里我们只讲下在我们项目开发上的区别:无论是否经过认证,订阅号不能通过自定义菜单跳转到WEB项目并获取用户的信息,而已认证的服务号则可以做到
如何调用微信公众号接口
微信公众号接口很多,例如自定义菜单、获取用户列表、获取用户信息,今天我们就来说一下复盘项目要使用哪些接口,以及这些接口是如何调用的
我们需要调用的接口
1. 基本配置接口
2. 获取access_token,这是一个微信全局密匙,用以创建或删除菜单、获取openid等等
3. 创建自定义菜单,并从自定义菜单跳转到WEB服务器
4. 获取微信端CODE,然后使用CODE换取用户openid
5. 使用openid拉取用户信息
总结:获取access_token——》创建自定义菜单——》获取CODE——》使用CODE获取openid——》使用openid获取用户信息
调用接口方法
微信公众号接口调用皆为访问网址的方式,在开发文档上会给出具体网址,再将所需参数填入到上述网址中,若正确则返回你需要的信息,若错误则返回具体错误信息
三、常见问题
1.我一个WEB后端开发,怎么就会到微信公众号上开发了呢?
2.在任务7中无论哪个API都会给一个JAR包引用,怎么在微信公众号的开发文档中找不到要引用的JAR包?
3.个人订阅号无法认证,服务号需要企业才能申请,修真院微信公众号又不能乱用,那么我们怎么进行微信公众号的搭建测试呢?
四、解决方案
1.我一个JAVA后端开发,怎么就到微信公众号上开发了呢?
听到我的复盘项目要在微信上开发的时候,我也很慌,不知所措。不过后面读了一下微信公众号开发相关文章,我自己也写了一个小demo,发现微信公众号开发只是套着一个微信壳的WEB工程而已,所以莫须惊慌
2.在任务7中无论哪个API都会给一个JAR包引用,怎么在微信公众号的开发文档中找不到要引用的JAR包?
微信公众号的开发不需要JAR包,它的会在开发文档中给你一个网址,然后正确的将参数填入网址中,访问这个网址,它会将几个参数用JSON的形式返回
3.个人微信订阅号无法认证,服务号需要企业才能申请,修真院微信公众号又不能乱用,那么我们怎么进行微信公众号的搭建测试呢?
我们可以申请一个微信测试号,这个测试号可以对大部分接口进行测试,不过有一个缺点就是没有例如创建自定义菜单的可视操作界面,只能通过url或接口调试工具进行操作
五、编码实战
六、扩展思考
七、参考文献
1.微信开发文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
2.csdn博客之网页授权:http://blog.csdn.net/frankcheng5143/article/details/50005047
3.csdn博客之自定义菜单:http://blog.csdn.net/u013239111/article/category/6120446
3.简书之获取用户信息:http://blog.csdn.net/u013239111/article/category/6120446
八、更多讨论
提问1:用户的openid是一开始就有的吗?每个用户只有一个?
答:关注后才会有,并且openid在当前关注的公众号是唯一的,只能在当前关注的公众号内使用
提问2:代码内使用到的网址是怎么回事?
答:这是微信接口使用的方式,微信API不给出JAR包,而是使用网址的形式使用
详见视频:
微信公众号的简单开发
PPT链接:PPT
视频链接:视频
感谢大家观看
今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~
------------------------------------------------------------------------------------------------------------
“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,学习的路上不再迷茫。
技能树.IT修真院