前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python+Tornado开发微信公众号(二)

Python+Tornado开发微信公众号(二)

作者头像
企鹅号小编
发布2018-01-02 10:13:43
1.1K0
发布2018-01-02 10:13:43
举报
文章被收录于专栏:微信小开发

四. IOLoop定时获取access_token和jsapi_ticket

3.Redis数据库

如果有对Redis不了解的同学,可参考Redis快速入门

basecache.py

tokencache.py

4. 使用tornado的Ioloop实现定时获取access_token和 jsapi_ticket,并将获取到的access_token和 jsapi_ticket保存在Redis数据库中

wxconfig.py

wxshedule.py

run.py将定时器的启动放在主程序入口处,保证每次启动服务器时,重新启动定时器

五. 自定义菜单及点击菜单时获取openid

1. 编写菜单对应的html页面

先在template模板文件夹下制作一个html页面,用于点击自定义菜单时跳转到的网页.

编写一个页面处理类,用于接收tornado.web.RequestHandler请求

给PageHandler添加url规则

2.创建一个菜单,并给菜单添加获取授权code的URL

以下是微信公众平台官方文档给出的具体流程,详见 网页授权获取用户基本信息

我们希望在用户点击自定义菜单时,需要先获取用户的openid,以便从我们自己的后台中通过该openid获取这个用户更多的信息,比如它对应的我们后台中的uid等, 如果我们后台中没有这个用户,则需要执行绑定等操作.

因此我们需要给这个自定义菜单按钮添加一个对应的URL,点击这个菜单,跳转到这个URL,这个URL会触发获取code操作,获取到code后,通过获取授权的access_token接口,获取openid及access_token

(1) 给菜单添加url,及state映射关系

state为自定义字符串,可以用来标识是用户点击了哪一个菜单,放在一个dict字典中,当前我们制作的第一个菜单就对应/page/index映射

附:涉及到的主要程序代码如下:

wxconfig.py

wxauthorize.py 中的 WxAuthorServer类

wxmenu.py

wx_handler.py

本文来自企鹅号 - 全球大搜罗媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文来自企鹅号 - 全球大搜罗媒体

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis®
腾讯云数据库 Redis®(TencentDB for Redis®)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档