真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理

小編給大家分享一下C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理 ,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

成都創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括輝縣網(wǎng)站建設(shè)、輝縣網(wǎng)站制作、輝縣網(wǎng)頁制作以及輝縣網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,輝縣網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到輝縣省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

1、菜單的總體介紹

菜單的事件處理如下所示,包括了單擊和跳轉(zhuǎn)兩個(gè)操作,未來企業(yè)號可能會增加一些和公眾號一樣的掃碼操作,拍照操作等功能的,目前只有兩個(gè)。

C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理

官方的菜單定義接口包含了下面三種操作,菜單創(chuàng)建、列表獲取和菜單刪除,這點(diǎn)和公眾號操作幾乎一樣了。

C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理

2、菜單的實(shí)體類定義和接口定義處理

我們定義菜單,包括定義它的一些屬性,包含有name, type, key,url,以及一個(gè)指向自身引用的子菜單引用,因此菜單就可以循環(huán)構(gòu)造多個(gè)層次,雖然嚴(yán)格意義上來講,企業(yè)號的菜單和公眾號菜單一樣,一級三個(gè),二級最多五個(gè),而且沒有三級菜單了。

實(shí)體類的UML圖示如下所示。

C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理

菜單管理的創(chuàng)建操作,官方定義如下所示。

  • 請求說明

Https請求方式: POST

https://qyapi.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN&agentid=1

請求包如下:

{
   "button":[
       {	
           "type":"click",
           "name":"今日歌曲",
           "key":"V1001_TODAY_MUSIC"
       },
       {
           "name":"菜單",
           "sub_button":[
               {
                   "type":"view",
                   "name":"搜索",
                   "url":"http://www.soso.com/"
               },
               {
                   "type":"click",
                   "name":"贊一下我們",
                   "key":"V1001_GOOD"
               }
           ]
      }
   ]
}
  • 參數(shù)說明

參數(shù)必須說明
access_token調(diào)用接口憑證
agentid企業(yè)應(yīng)用的id,整型??稍趹?yīng)用的設(shè)置頁面查看
button一級菜單數(shù)組,個(gè)數(shù)應(yīng)為1~3個(gè)
sub_button二級菜單數(shù)組,個(gè)數(shù)應(yīng)為1~5個(gè)
type菜單的響應(yīng)動作類型,目前有click、view兩種類型
name菜單標(biāo)題,不超過16個(gè)字節(jié),子菜單不超過40個(gè)字節(jié)
keyclick類型必須菜單KEY值,用于消息接口推送,不超過128字節(jié)
urlview類型必須網(wǎng)頁鏈接,員工點(diǎn)擊菜單可打開鏈接,不超過256字節(jié)
  • 權(quán)限說明

管理員須擁有應(yīng)用的管理權(quán)限,并且應(yīng)用必須設(shè)置在回調(diào)模式。

返回結(jié)果

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

根據(jù)上面官方的定義語義,我們菜單管理的C#管理接口定義如下所示。

    /// 
    /// 企業(yè)號菜單管理接口定義    /// 
    public interface ICorpMenuApi
    {        /// 
        /// 獲取菜單數(shù)據(jù)        /// 
        /// 調(diào)用接口憑證
        /// 
        MenuListJson GetMenu(string accessToken, string agentid);        /// 
        /// 創(chuàng)建菜單        /// 
        /// 調(diào)用接口憑證
        /// 菜單對象
        /// 
        CommonResult CreateMenu(string accessToken, MenuListJson menuJson, string agentid);        /// 
        /// 刪除菜單        /// 
        /// 調(diào)用接口憑證
        /// 
        CommonResult DeleteMenu(string accessToken, string agentid);
    }

我們以創(chuàng)建菜單的實(shí)現(xiàn)為例來介紹微信企業(yè)號菜單的操作,其他的操作類似處理,都是返回一個(gè)公共的消息類,方便處理和讀取,代碼如下所示。

        /// 
        /// 創(chuàng)建菜單        /// 
        /// 調(diào)用接口憑證
        /// 菜單對象
        /// 
        public CommonResult CreateMenu(string accessToken, MenuListJson menuJson, string agentid)
        {            var url = string.Format("http://www.php.cn/{0}&agentid={1}", accessToken, agentid);            string postData = menuJson.ToJson();            return Helper.GetCorpExecuteResult(url, postData);
        }

3、企業(yè)號菜單管理接口的調(diào)用和處理效果

調(diào)用的代碼和效果圖如下所示。

        private void btnMenuCreate_Click(object sender, EventArgs e)
        {
            MenuJson productInfo = new MenuJson("產(chǎn)品介紹", new MenuJson[] { 
                new MenuJson("軟件產(chǎn)品介紹", ButtonType.click, "event-software")
                , new MenuJson("框架源碼產(chǎn)品", ButtonType.click, "event-source")
                , new MenuJson("軟件定制開發(fā)", ButtonType.click, "event-develop")
            });

            MenuJson frameworkInfo = new MenuJson("框架產(chǎn)品", new MenuJson[] { 
                new MenuJson("Win開發(fā)框架", ButtonType.click, "win"),                new MenuJson("WCF開發(fā)框架", ButtonType.click, "wcf"),                new MenuJson("混合式框架", ButtonType.click, "mix"), 
                new MenuJson("Web開發(fā)框架", ButtonType.click, "web")
                ,new MenuJson("代碼生成工具", ButtonType.click, "database2sharp")
            });

            MenuJson relatedInfo = new MenuJson("相關(guān)鏈接", new MenuJson[] { 
                new MenuJson("公司介紹", ButtonType.click, "event_company"),                new MenuJson("官方網(wǎng)站", ButtonType.view, "http://www.php.cn/"),                new MenuJson("聯(lián)系我們", ButtonType.click, "event_contact"),                new MenuJson("應(yīng)答系統(tǒng)", ButtonType.click, "set-1"),    
                new MenuJson("發(fā)郵件", ButtonType.view, "http://www.php.cn/")
            });

            MenuListJson menuJson = new MenuListJson();
            menuJson.button.AddRange(new MenuJson[] { productInfo, frameworkInfo, relatedInfo });            //Console.WriteLine(menuJson.ToJson());

            if (MessageUtil.ShowYesNoAndWarning("您確認(rèn)要?jiǎng)?chuàng)建菜單嗎") == System.Windows.Forms.DialogResult.Yes)
            {
                ICorpMenuApi bll = new CorpMenuApi(); 
                CommonResult result = bll.CreateMenu(token, menuJson, agentid);
                Console.WriteLine("創(chuàng)建菜單:" + (result.Success ? "成功" : "失敗:" + result.ErrorMessage));
            }
        }        private void btnMenuGet_Click(object sender, EventArgs e)
        {
            ICorpMenuApi bll = new CorpMenuApi();
            MenuListJson menu = bll.GetMenu(token, agentid);            if (menu != null)
            {
                Console.WriteLine(menu.ToJson());
            }
        }

調(diào)用代碼的測試輸出如下所示。

C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理

以上是“C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理 ”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


新聞名稱:C#如何實(shí)現(xiàn)微信企業(yè)號的菜單管理
網(wǎng)站鏈接:http://weahome.cn/article/ishcgh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部