C# 微信公众平台开发(2)-- 微信菜单
2015-11-18 12:12
573 查看
上一篇了解微信开发者中心 URL的配置验证;
验证成功后,就可以对获取的接口权限进行操作
菜单操作
发布服务器,执行下,在微信公众号上就可以看到自己定义的菜单了
请点击我 --我爱足球
-------------------------------------------------------------------------------------
验证成功后,就可以对获取的接口权限进行操作
#region 创建菜单 public string CreateMenuPage(string posturl, string postData) { Stream outstream = null; Stream instream = null; StreamReader sr = null; HttpWebResponse response = null; HttpWebRequest request = null; Encoding encoding = Encoding.UTF8; byte[] data = encoding.GetBytes(postData); // 准备请求... try { // 设置参数 request = WebRequest.Create(posturl) as HttpWebRequest; CookieContainer cookieContainer = new CookieContainer(); request.CookieContainer = cookieContainer; request.AllowAutoRedirect = true; request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = data.Length; outstream = request.GetRequestStream(); outstream.Write(data, 0, data.Length); outstream.Close(); //发送请求并获取相应回应数据 response = request.GetResponse() as HttpWebResponse; //直到request.GetResponse()程序才开始向目标网页发送Post请求 instream = response.GetResponseStream(); sr = new StreamReader(instream, encoding); //返回结果网页(html)代码 string content = sr.ReadToEnd(); string err = string.Empty; Response.Write(content); return content; } catch (Exception ex) { string err = ex.Message; return string.Empty; } } #endregion #region 删除菜单 public JsonResult DelMenu() { string postUrl = "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token={0}"; postUrl = string.Format(postUrl, CommonApi.GetAccessToken(strAppID, strAppSecret)); string menuInfo = getMenuInfo(); string result = CommonApi.PostWebRequest(postUrl, menuInfo); return Json(result, JsonRequestBehavior.AllowGet); } #endregion #region 获取菜单 public string GetMenuList(string posturl) { Stream instream = null; StreamReader sr = null; HttpWebResponse response = null; HttpWebRequest request = null; Encoding encoding = Encoding.UTF8; // 准备请求... try { // 设置参数 request = WebRequest.Create(posturl) as HttpWebRequest; CookieContainer cookieContainer = new CookieContainer(); request.CookieContainer = cookieContainer; request.AllowAutoRedirect = true; request.Method = "GET"; request.ContentType = "application/x-www-form-urlencoded"; //发送请求并获取相应回应数据 response = request.GetResponse() as HttpWebResponse; //直到request.GetResponse()程序才开始向目标网页发送Post请求 instream = response.GetResponseStream(); sr = new StreamReader(instream, encoding); //返回结果网页(html)代码 string content = sr.ReadToEnd(); string err = string.Empty; Response.Write(content); return content; } catch (Exception ex) { string err = ex.Message; return string.Empty; } } #endregion private string getMenuInfo() { { "button":[ { "type":"click", "name":"今日歌曲", "key":"V1001_TODAY_MUSIC" }, { "name":"菜单", "sub_button":[ { "type":"view", "name":"搜索", "url":"http://www.soso.com/" }, { "type":"view", "name":"视频", "url":"http://v.qq.com/" }, { "type":"click", "name":"赞一下我们", "key":"V1001_GOOD" }] }] } }
菜单操作
发布服务器,执行下,在微信公众号上就可以看到自己定义的菜单了
请点击我 --我爱足球
-------------------------------------------------------------------------------------
如果你觉得有帮助 请关注我的微信公众号,没有帮助你也可以添加哟!o(∩_∩)o 哈哈
相关文章推荐
- 航空IT生活圈(微信号:Air-IT ) 微信订阅还不错
- 微信内移动前端开发抓包调试工具fiddler使用教程
- Android微信支付遇到的坑
- 仿微信下拉录制视频
- 对微信的二次打包学习1:重打包
- 反编译微信dex
- android 微信登录
- android接入原生第三方登录(微信登录、QQ登录、新浪微博登录)
- 仿微信通过拍照、本地图片然后裁剪完美更换头像
- 微信JSSDK录音的一些bug
- 启明星 微信版 会议室预定系统
- 欢迎关注微信公众号——风色年代
- 微信服务器发送三次重复的排重问题
- 微信移动应用接入开发, Android 授权微信登录获取openid,unionid等,score参数错误或者没有scope权限
- 微信服务器之三次数据传递,排重的问题
- android 微信分享
- android 微信分享
- 仿的微信总结
- ****微信开发问题总结(原创)
- 微信默认表情符号的代码对照表