• 微信自定义菜单(创建和删除)


    微信自定义菜单这个就比较简单,直接贴代码。

    微信说的注意:

    目前自定义菜单最多包括3个一级菜单,每个一级菜单最多包含5个二级菜单。一级菜单最多4个汉字,二级菜单最多7个汉字,多出来的部分将会以“...”代替。请注意,创建自定义菜单后,由于微信客户端缓存,需要24小时微信客户端才会展现出来。建议测试时可以尝试取消关注公众账号后再次关注,则可以看到创建后的效果。 

     1         #region 菜单管理
     2         public ActionResult CreateMenu()
     3         {
     4             string access_token = weixin.AccessToken();
     5             string url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" + access_token;
     6             string data = "";
     7 
     8             using (StreamReader sr = new StreamReader(Server.MapPath("/Config/menu.txt")))
     9             {
    10                 data = sr.ReadToEnd();
    11             }
    12 
    13 
    14             var json = HttpHelper.Post(url, data);
    15             return Content(json);
    16         }
    17 
    18         public ActionResult DeleteMenu()
    19         {
    20             string access_token = weixin.AccessToken();
    21             string url = "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=" + access_token;
    22 
    23             var json = HttpHelper.Get(url);
    24             return Content(json);
    25         }
    26         #endregion

    返回结果

    正确时的返回JSON数据包如下:

    {"errcode":0,"errmsg":"ok"}
    

    错误时的返回JSON数据包如下(示例为无效菜单名长度):

    {"errcode":40018,"errmsg":"invalid button name size"}

    menu.txt

    {
         "button":[
          {
               "name":"一级标题1",
               "sub_button":[
               {    
                   "type":"view",
                   "name":"二级标题1",
                   "url":"http://xx.xx.com/1.html"
                },
                {
                   "type":"view",
                   "name":"二级标题2",
                   "url":""
                },
                {
                   "type":"view",
                   "name":"二级标题3",
                   "url":""
                },
                {
                   "type":"view",
                   "name":"二级标题4",
                   "url":""
                },
                {
                   "type":"view",
                   "name":"二级标题5",
                   "url":""
                }]
           },
           {
               "type":"view",
               "name":"一级标题2",
               "url":"http://xx.xx.com/2.html"
           },
           {
               "name":"一级标题3",
               "sub_button":[
                {
                   "type":"view",
                   "name":"二级标题1",
                   "url":""
                },
                {
                   "type":"view",
                   "name":"二级标题2",
                   "url":"http://xx.xx.com/3-1.html"
                }]
           }]
     }
  • 相关阅读:
    asp.net生命周期
    中国互联网公司数据库访问现状
    console在文件中
    2011程序员薪资调查报告全文发布
    Centos上搭建能用于ok6410开发板的tftp服务器
    Centos 上搭建nfs且可挂载到6410开发板
    linux下软件的卸载与安装
    基于ok6410的韦东山驱动视频简要分析lcd驱动
    6410上移植uboot
    编译可加载触摸屏驱动的uImage内核。
  • 原文地址:https://www.cnblogs.com/deeround/p/4371961.html
Copyright © 2020-2023  润新知