首页 > 代码库 > 微信自定义菜单
微信自定义菜单
自己写的构造自定义菜单的方法,虽然有些重复,但毕竟是自己写的感觉更清楚些!各位有什么好的意见指出来呀!
两个类SubButton(子菜单),ParentButton(父级菜单)。
public class ParentButton{ public string name; public List<SubButton> list;}public class SubButton{ public string name; public string type; public string url; public string key;}
构造好的菜单传给GetCustomMenuJsonData得到正确的Json格式数据。
public string GetCustomMenuJsonData(List<ParentButton> list){ string jsonStr = ""; string str = ""; if (list != null && list.Count > 0) { foreach (ParentButton parentButton in list) { if (parentButton != null) { string subStr = ""; if (parentButton.list != null && parentButton.list.Count > 0) { foreach (SubButton button in parentButton.list) { if (button != null) { if (subStr != "") { subStr += ","; } if (button.type == "click") { subStr += "{ \"type\":\"click\", \"name\":\"" + button.name + "\",\"key\":\"" + button.key + "\" }"; } else { subStr += "{ \"type\":\"view\", \"name\":\"" + button.name + "\",\"url\":\"" + button.url + "\" }"; } } } } if (str != "") { str += ","; } str += " {\"name\":\"" + parentButton.name + "\", \"sub_button\":[" + subStr + "]}"; } } jsonStr = ("{ \"button\":[" + str + "]}"); } return jsonStr; }
举例:
Publish List<ParentButton> CreateCustomButton(){ParentButton button1 = new ParentButton();List<SubButton> subButtonList1 = new List<SubButton>();SubButton subButton = new SubButton();subButton.name = "百度";subButton.type = "view";subButton.url = "www.baidu.com";subButtonList1.Add(subButton);subButton = new SubButton();subButton.name = "谷歌";subButton.type = "view";subButton.url = "www.google.com";subButtonList1.Add(subButton);button1.name = "搜索"; button1.list = subButtonList1;ParentButton button2 = new ParentButton();button2.name="其他";List<ParentButton> list = new List<ParentButton>();list.Add(button1);list.Add(button2);return list;}
得到json数据后通过
https://api.wexin.qq.com/cgi-bin/token?grant_type=client_credential&appid=AppId&secret=AppSecret
获取到accesstoken,然后通过
https://api.weixin.qq.com/cgi-bin/menu/create?access_token=AccessToken
提交自定义菜单的json数据,生成菜单!
微信自定义菜单
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。