微信公众号开发

大家好,我是IT修真院深圳分院第6期学员,一枚正直善良的JAVA程序员。

今天给大家分享一下,修真院官网复盘项目中用到的知识点,微信公众号开发。

1.背景介绍

微信公众平台是运营者通过公众号为微信用户提供资讯和服务的平台,而公众平台开发接口则是提供服务的基础,开发者在公众平台网站中创建公众号、获取接口权限后,就可以进行开发了

微信公众平台公分4大板块:订阅号、服务号、小程序、企业号。按照微信2016年公开课规划,企业号后续将与企业微信合并

订阅号和服务号均为传统意义的“公众号”,两者开发模式完全相同,只不过服务号可以使用更多的服务接口,而订阅号则是“阉割版”的服务号。

2.知识剖析

微信公众号开发的实质

微信公众号的开发,实质上是一个只能运行在微信内置浏览器上的普通WEB项目,如果不在微信公众号上从菜单进行跳转,是不能正常打开网页的,要么直接提示,要么获取不到数据

而我们项目中使用到微信的功能,就是从微信公众号的自定义菜单跳转到我们的WEB项目上,然后从微信拉取微信的用户信息,如微信昵称、微信头像、用户openid,性别、地址等

微信公众平台接入

1、配置好服务器

2、申请公众号或测试号

3、开发者基本配置

4、实现服务

微信服务号简单流程。

1. 基本配置接口

2. 获取access_token,这是一个微信全局密匙,用以创建或删除菜单、获取openid等等

3. 创建自定义菜单,并从自定义菜单跳转到WEB服务器

4. 获取微信端CODE,然后使用CODE换取用户openid

5. 使用openid拉取用户信息

总结:获取access_token——》创建自定义菜单——》获取CODE——》使用CODE获取openid——》使用openid获取用户信息

3.常见问题

全局access_token 和 网页授权access_token的区别?

4.解决方案

关于网页授权access_token和普通access_token的区别

1、微信网页授权是通过OAuth2.0机制实现的,在用户授权给公众号后,公众号可以获取到一个网页授权特有的接口调用凭证(网页授权access_token),通过网页授权access_token可以进行授权后接口调用,如获取用户基本信息;

2、其他微信接口,需要通过基础支持中的“获取access_token”接口来获取到的普通access_token调用。

5.编码实战

6.扩展思考

为了使第三方开发者能够为用户提供更多更有价值的个性化服务,微信公众平台开放了许多接口,包括自定义菜单接口、客服接口、获取用户信息接口、用户分组接口、群发接口等,开发者在调用这些接口时,都需要传入一个相同的参数access_token,它是公众账号的全局唯一票据,它是接口访问凭证。

access_token的有效期是7200秒(两小时),在有效期内,可以一直使用,只有当access_token过期时,才需要再次调用接口获取access_token。在理想情况下,一个7x24小时运行的系统,每天只需要获取12次access_token,即每2小时获取一次。如果在有效期内,再次获取access_token,那么上一次获取的access_token将失效。

目前,获取access_token接口的调用频率限制为2000次/天,如果每次发送客服消息、获取用户信息、群发消息之前都要先调用获取access_token接口得到接口访问凭证,这显然是不合理的,一方面会更耗时(多了一次接口调用操作),另一方面2000次/天的调用限制恐怕也不够用。因此,在实际应用中,我们需要将获取到的access_token存储起来,然后定期调用access_token接口更新它,以保证随时取出的access_token都是有效的。

1.如何定时获取access_token?

在Java中,如果要定时执行某项任务,需要用到java.util.Timer类,对于喜欢使用框架的朋友,可以采用 开源的任务调度框架quartz,Spring框架也支持quartz。除此这外,还有一种方法就是启动一个线程,在线程的run()方法中写一个死循环,然后使用Thread.sleep()来保证线程定时执行某项任务。

2.将access_token保存在哪?

对于access_token的存储,可以考虑存储在文件、数据库或内存中。具体采用哪种存储方式,需要根据项目实际情况而定。如果只有一台服务器,直接将access_token存储在内存中是最简便有效的方式。

定期获取并存储access_token的流程为:Web服务器启动时就加载一个Servlet,在Servlet的init()方法中启动一个线程,在线程的run()方法中通过死循环+Thread.sleep()的方式定期获取access_token,然后将获取到的access_token保存在public static修饰的变量中。

7.参考文献

官方文档

百度

8.更多讨论

1.为什么微信的API和任务的时候不一样。

A:因为微信的个人信息是存储在微信服务器上面的。

2.官方文档中为什么没有java代码demo?

A:倒是有PHP的,毕竟最好的语言。java如果个人水平高,照着文档提示直接写一个出来。如果写不出来,只能去copy别人的了。

推荐个SDK:https://github.com/Wechat-Group/weixin-java-tools

号称目前最好的微信SDK

3.多线程不会怎么办?

A:new  Thread,start。就是这么简单,什么锁?我也不懂。

感谢大家观看

PPT:PPT

视频:视频

今天的分享就到这里啦,欢迎大家点赞、转发、留言、拍砖~

技能树.IT修真院

“我们相信人人都可以成为一个工程师,现在开始,找个师兄,带你入门,掌控自己学习的节奏,学习的路上不再迷茫”。

这里是技能树.IT修真院,成千上万的师兄在这里找到了自己的学习路线,学习透明化,成长可见化,师兄1对1免费指导。快来与我一起学习吧~

小礼物走一走,来简书关注我

赞赏支持

作者:blue

链接:

來源:简书

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容

  • 古赋|外一首 广东.蕙清 〈一〉 风摇荡 叶苍苍 波静画船 江上孤鹜 何日是归年 人语渺 共秋烟 任他愁潮潇湘雨 ...
    蕙清阅读 352评论 12 12
  • 在我们的婚姻里,也会想下车走走吗? 车停在交警大队,鹿泉。 因为一个大爷拎着包从后门上车了。 公交车司机一直让他从...
    拥人自扰之阅读 126评论 0 0
  • 读书足以怡情,足以傅彩,足以长才。其怡情也,最见于独处幽居之时;其傅彩也,最见于高谈阔论之中,其长才也,最见...
    书卷女子阅读 420评论 4 13
  • 说起看书这点事,我要感谢父母,感谢他们工作忙碌没有时间陪我,让我学会用读书来自我娱乐,感谢他们虽然不富裕却从未拒绝...
    爱写字的喵阅读 200评论 0 1