.net mvc 微信公衆號 自定義菜單

官方文檔:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141013&token=&lang=zh_CNhtml

建立自定義菜單:json

MVC中的接口方法爲:api

public void CreateMenu()
        {
            string access_token = AdminUtil.GetAccessToken();
            string posturl = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=" + access_token;
            string menuStr = "";// " 菜單結構";
            using (StreamReader sr = new StreamReader(HttpContext.Server.MapPath("/Impl/MyMenu.json")))
            {
                menuStr = sr.ReadToEnd();
            }
            string responseResult = HttpRequestUtil.RequestUrlSendMsg(posturl, "POST", menuStr);
            Response.Write(responseResult);
        }

MyMenu.json文件爲:cookie

 {
    "button": [
        {
            "name": "資訊服務",
            "sub_button": [
                {
                    "type": "view",
                    "name": "營業網點查詢1",
                    "url": "http://www.soso.com/"
                },              
           
                {
                    "type": "view",
                    "name": "還款計算器",
                    "url": "http://v.qq.com/"
                }
            ]
        },
        {
            "name": "業務中心",
            "sub_button": [
                {
                    "type": "view",
                    "name": "擔保業務辦理",
                    "url": "http://www.soso.com/"
                },            
                {
                    "type": "click",
                    "name": "公積金擔保查詢",
                    "key": "V1001_01"
                }                
            ]
        },       
        {
            "name": "我的中心",
            "sub_button": [
                {
                    "type": "view",
                    "name": "優惠券管理",
                    "url": "http://www.soso.com/"
                },
                {
                    "type": "view",
                    "name": "房產中心",
                    "url": "http://v.qq.com/"
                }
            ]
        }
    ]
 }

HttpRequestUtil類中的代碼post

#region 請求Url,發送json數據
        /// <summary>
        /// 請求Url,發送json數據
        /// </summary>
        public static string RequestUrlSendMsg(string url, string method,string JSONData)
        {
            byte[] bytes = Encoding.UTF8.GetBytes(JSONData);
            // 設置參數
            HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
            CookieContainer cookieContainer = new CookieContainer();
            request.CookieContainer = cookieContainer;
            request.AllowAutoRedirect = true;
            request.Method = method;
            request.ContentType = "text/html";
            request.Headers.Add("charset", "utf-8");
            Stream reqstream = request.GetRequestStream();
            reqstream.Write(bytes, 0, bytes.Length);
            //聲明一個HttpWebRequest請求  
            request.Timeout = 90000;
            //設置鏈接超時時間  
            request.Headers.Set("Pragma", "no-cache");  
            //發送請求並獲取相應迴應數據
            HttpWebResponse response = request.GetResponse() as HttpWebResponse;
            //直到request.GetResponse()程序纔開始向目標網頁發送Post請求
            Stream responseStream = response.GetResponseStream();
            StreamReader sr = new StreamReader(responseStream, Encoding.Default);
            //返回結果網頁(html)代碼
            string content = sr.ReadToEnd();
            return content;
        }
        #endregion
相關文章
相關標籤/搜索