怎么在微信公众号平台中实现接口开发?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
官方菜单功能介绍
请求接口:https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN
新增菜单管理类
public class MenuFirstLayerModel { public string name { get; set; } public List<MenuTwoLayerModel> sub_button { get; set; } } public class MenuTwoLayerModel { public string type { get; set; } public string name { get; set; } public string key { get; set; } public string url { get; set; } } public class WXMenu { public List<MenuFirstLayerModel> button { get; set; } public string Create() { try { var requestUri = string.Format(@"https://api.weixin.qq.com/cgi-bin/menu/create?access_token={0}", WeCharBase.AccessToken); return WeCharBase.Post(requestUri, new StringContent(JsonConvert.SerializeObject(new { button = button }))); } catch (Exception ex) { return ex.Message; } } }
新增控制器MenuController.cs
public ActionResult ViewMenu() { return View(); } public ActionResult CreateMenu() { var wxMenu = new WXMenu() { button = new List<MenuFirstLayerModel>() { new MenuFirstLayerModel() { name="扫码", sub_button = new List<MenuTwoLayerModel>() { new MenuTwoLayerModel() { type = "scancode_waitmsg", name = "扫码带提示", key = "rselfmenu_0_0" }, new MenuTwoLayerModel() { type = "scancode_push", name = "扫码推事件", key = "rselfmenu_0_1" } }, }, new MenuFirstLayerModel() { name = "发图", sub_button = new List<MenuTwoLayerModel>() { new MenuTwoLayerModel() { type = "pic_sysphoto", name = "系统拍照发图", key = "rselfmenu_1_0" }, new MenuTwoLayerModel() { type = "pic_photo_or_album", name = "拍照或者相册发图", key = "rselfmenu_1_1" }, new MenuTwoLayerModel() { type = "pic_weixin", name = "微信相册发图", key = "rselfmenu_1_2" } } }, new MenuFirstLayerModel() { name = "其他", sub_button = new List<MenuTwoLayerModel>() { new MenuTwoLayerModel() { type = "location_select", name = "发送位置", key = "rselfmenu_2_0" }, new MenuTwoLayerModel() { type = "click", name = "今日歌曲", key = "V1001_TODAY_MUSIC" }, new MenuTwoLayerModel() { type = "view", name = "百度", url = "http://www.baidu.com" } } } } }; return Content(wxMenu.Create()); }
新增视图ViewMenu.cshtml
<script type="text/javascript" language="javascript"> $(document).ready(function () { $("#btnCreate").click(function () { $.ajax({ type: "POST", url: "/Menu/CreateMenu", data: { id: $("#textContent").val() }, success: function (responseTest) { $("#resultMesage").text(responseTest); } }); }); }); </script> <table> <tr> <td> <div class="title">菜单创建</div> <textarea id="textContent" name="textContent" rows="20" cols="100"> button = new[] { new { name="扫码", sub_button = new[] { new { type = "scancode_waitmsg", name = "扫码带提示", key = "rselfmenu_0_0" }, new { type = "scancode_push", name = "扫码推事件", key = "rselfmenu_0_1" } } }, new { name = "发图", sub_button = new[] { new { type = "pic_sysphoto", name = "系统拍照发图", key = "rselfmenu_1_0" }, new { type = "pic_photo_or_album", name = "拍照或者相册发图", key = "rselfmenu_1_1" }, new { type = "pic_weixin", name = "微信相册发图", key = "rselfmenu_1_2" } } }, new { name = "其他", sub_button = new[] { new { type = "location_select", name = "发送位置", key = "rselfmenu_2_0" }, new { type = "click", name = "今日歌曲", key = "V1001_TODAY_MUSIC" }, new { type = "view", name = "百度", url = "http://www.baidu.com" } } } } </textarea> </td> <td><input class="btncss" id="btnCreate" type="button" value=" 创建 " /></td> <td id="resultMesage" class="resultMesage"></td> </tr> </table>
看完上述内容,你们掌握怎么在微信公众号平台中实现接口开发的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。