前言:本文是学习网易微专业的《python全栈工程师 - Django快速建站》课程的笔记,欢迎学习交流。同时感谢老师们的精彩传授!
一、课程目标
- 自定义菜单
- 利用测试公众号进行测试
二、详情解读
2.1.公众号菜单
2.1.1.菜单格式
- 最多3个一级菜单,每个一级菜单最多5个二级菜单。
- 一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的部分将会以“…”代替。
2.1.2.菜单事件类型
click、view、scancode_push、scancode_waiting、pic_sysphoto、pic_photo_or_album、pic_weixin、location_select、media_id、view_limited
详细介绍参考微信公众号官方文档:https://developers.weixin.qq.com/doc/offiaccount/Custom_Menus/Creating_Custom-Defined_Menu.html
2.2.自定义菜单
2.2.1.基本步骤
- 实现与微信服务器的连接:确定连接
URL
- 开发者服务器向微信服务器发送菜单定义数据
– 微信服务器接口:https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN
–wechatpy
封装的方法,可参考官方文档:http://docs.wechatpy.org/zh_CN/master/client/menu.html - 如有必要,微信服务器向
URL
返回信息
实操:
Step1: 启动内网穿透,并将域名添加到wechat/wechat/settings.py
中的ALLOWED_HOSTS
中
# 比如我这里是这样的:
ALLOWED_HOSTS = ['sz242a.natappfree.cc',]
Step2: 在测试公众号里填写路由http://sz242a.natappfree.cc/wxmessage/replytype/
,这里内网穿透的域名会跟小编的不一样,要注意。
url
填写好了之后,点击“提交”
。此处注意本地的项目服务器要运行着。下图表示配置成功
Step3: 在wechat/wxmessage/urls.py
中添加create_menu
路由
# -*- coding=utf-8 -*-
from django.urls import path, re_path
from . import views
app_name = 'wxmessage'
urlpatterns = [
re_path('^replytype/', views.send_message, name='send_message'),
path('create_menu/', views.create_menu, name