上一篇介绍了如何通过通用接口获取AccessToken,有了AccessToken,我们就可以来操作自定义菜单,以及其他的高级接口,这一篇单讲自定义菜单。
一、自定义菜单规则自定义菜单分为一级菜单和二级菜单。
一级菜单数量为1-3个,即打开公众账号直接可以看到排列在最下方的最多3个按钮。一级菜单的文字最多不能超过16字节(相当于8个汉字)。二级菜单从属于一级菜单,数量为1-5个。二级菜单的文字不最多不能超过40字节(相当于20个汉字)。
无论一级菜单还是二级菜单,都有两个触发事件可以选择,分别是:点击(click,值不能超过128字节)和打开网址(view,url不能超过256个字节)。当一个一级菜单下有二级菜单存在的时候,这个一级菜单按钮被点击不会有任何事件发生。
二、创建菜单使用Senparc.Weixin.MP SDK创建自定义菜单非常简单。只需三步:
第一步:获取AccessToken
var accessToken = AccessTokenContainer.TryGetToken(appId, appSecret).access_token;第二步:组织菜单内容
ButtonGroup bg = new ButtonGroup();第三步:提交到微信服务器
var result = CommonApi.CreateMenu(accessToken, bg);上面SingleClickButton和SingleViewButton分别对应了click和view两种菜单响应方式。
三、菜单查询查询菜单同样需要按照上面的方式获取AccessToken,然后只需要一行代码:
var result = CommonApi.GetMenu(accessToken);得到的result.menu的结构即类似上述创建菜单时的ButtonGroup bg变量。
四、菜单删除得到AccessToken后,删除菜单同样只需要一行代码:
var result = CommonApi.DeleteMenu(accessToken);