博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信程序开发系列教程(四)使用微信API创建公众号自定义菜单
阅读量:5843 次
发布时间:2019-06-18

本文共 1112 字,大约阅读时间需要 3 分钟。

大家可能经常看到一些微信公众号具有功能强大的自定义菜单,点击之后可以访问很多有用的功能。

这篇教程就教大家如何动手做一做。

这个教程最后实现的效果是:创建一个一级菜单“UI5", 点击之后弹出两个二级菜单,如下图蓝色区域所示。每个二级菜单都能完成一些任务。

那么用什么API创建这些自定义菜单呢?微信公众号平台技术文档中,点击"自定义菜单":

文档里给了创建自定义菜单需要维护参数的HTTPpost报文的格式:

回到我的例子,我用postman发送这个HTTP post请求:

这是我HTTP post的报文内容:

{"button":[{"name":"UI5","sub_button":[{"type": "view","name": "Jerry List","url": "http://wechatjerry.herokuapp.com/ui5"},{"type": "click","name": "Other UI5 application","key": "dataQuery"}]}]}

上述json格式的报文定义了一个一级菜单,标签文本为UI5。两个二级菜单(sub_button),类型分别为view和click。

view类型即绑定一个HTML页面到该二级菜单,点击之后跳转到这个页面去。我的例子绑定的html页面是。 类型为click的菜单很好理解,点击后,微信平台会发送一个事件给您公众号的微信服务器上。您需要在您的微信服务器里对这个时间做处理。事件类型通过参数key指定,我上述例子的类型是dataQuery,这个参数可以随意指定。

响应类型为click的微信自定义二级菜单的伪代码如下:

app.route('/').post(function(req,res){    req.on("end",function(){        var msgType = formattedValue(getXMLNodeValue('MsgType', content));        if( msgType === "event"){            var eventKey = formattedValue(getXMLNodeValue('EventKey', content));            if( eventKey === "dataQuery"){                // 响应微信自定义二级菜单的点击            }        }    }    );

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

转载地址:http://jpqcx.baihongyu.com/

你可能感兴趣的文章
何如获取单选框中某一个选中的值
查看>>
QQ悬浮返回顶部
查看>>
MySQL建表语句的一些特殊字段
查看>>
腾讯前端二面题目详解
查看>>
mascara-1
查看>>
Jquery Form表单取值
查看>>
Android API level 与version对应关系
查看>>
Team Name
查看>>
String类
查看>>
西门子_TDC_数据耦合小经验
查看>>
[LeetCode] Copy List with Random Pointer
查看>>
openstack部署之nova
查看>>
JS组件系列——表格组件神器:bootstrap table
查看>>
存储过程Oracle(一)
查看>>
log4j日志归档
查看>>
mysql遇见error,1049
查看>>
codevs——2822 爱在心中
查看>>
Python基础班---第一部分(基础)---Python基础知识---认识Python
查看>>
JAVA MAC 配置
查看>>
1134 最长上升子序列 (序列型 DP)
查看>>