国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Jadual Kandungan
1、菜單的總體介紹
2、菜單的實體類定義和接口定義處理
3、企業(yè)號菜單管理接口的調用和處理效果
Rumah applet WeChat pembangunan WeChat C#開發(fā)微信門戶及應用-微信企業(yè)號的菜單管理

C#開發(fā)微信門戶及應用-微信企業(yè)號的菜單管理

Feb 18, 2017 am 09:40 AM

前面幾篇陸續(xù)介紹了很多微信企業(yè)號的相關操作,企業(yè)號和公眾號一樣都可以自定義菜單,因此他們也可以通過API進行菜單的創(chuàng)建、獲取列表、刪除的操作,因此本篇繼續(xù)探討這個主體,介紹企業(yè)號的菜單管理操作。

菜單在很多情況下,能夠給我們提供一個快速入口,也可以用來獲取用戶信息的主要入口,通過OAuth2驗證接口,以及自定義的重定向菜單,我們就可以獲取對應的用戶ID,然后進一步獲取到用戶的相關數(shù)據(jù),可以顯示給客戶。

1、菜單的總體介紹

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

C#開發(fā)微信門戶及應用-微信企業(yè)號的菜單管理

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

C#開發(fā)微信門戶及應用-微信企業(yè)號的菜單管理

?

2、菜單的實體類定義和接口定義處理

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

實體類的UML圖示如下所示。

C#開發(fā)微信門戶及應用-微信企業(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 調用接口憑證
agentid 企業(yè)應用的id,整型??稍趹玫脑O置頁面查看
button 一級菜單數(shù)組,個數(shù)應為1~3個
sub_button 二級菜單數(shù)組,個數(shù)應為1~5個
type 菜單的響應動作類型,目前有click、view兩種類型
name 菜單標題,不超過16個字節(jié),子菜單不超過40個字節(jié)
key click類型必須 菜單KEY值,用于消息接口推送,不超過128字節(jié)
url view類型必須 網(wǎng)頁鏈接,員工點擊菜單可打開鏈接,不超過256字節(jié)
  • 權限說明

管理員須擁有應用的管理權限,并且應用必須設置在回調模式。

返回結果

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

?

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


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


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


????????///?<summary>
????????///?創(chuàng)建菜單????????///?</summary>
????????///?<param name="accessToken">調用接口憑證</param>
????????///?<param name="menuJson">菜單對象</param>
????????///?<returns></returns>
????????public?CommonResult?CreateMenu(string?accessToken,?MenuListJson?menuJson,?string?agentid)
????????{????????????var?url?=?string.Format("http://m.miracleart.cn/{0}&agentid={1}",?accessToken,?agentid);????????????string?postData?=?menuJson.ToJson();????????????return?Helper.GetCorpExecuteResult(url,?postData);
????????}


?

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

調用的代碼和效果圖如下所示。


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

????????????MenuJson?frameworkInfo?=?new?MenuJson("框架產品",?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("相關鏈接",?new?MenuJson[]?{?
????????????????new?MenuJson("公司介紹",?ButtonType.click,?"event_company"),????????????????new?MenuJson("官方網(wǎng)站",?ButtonType.view,?"http://m.miracleart.cn/"),????????????????new?MenuJson("聯(lián)系我們",?ButtonType.click,?"event_contact"),????????????????new?MenuJson("應答系統(tǒng)",?ButtonType.click,?"set-1"),????
????????????????new?MenuJson("發(fā)郵件",?ButtonType.view,?"http://m.miracleart.cn/")
????????????});

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

????????????if?(MessageUtil.ShowYesNoAndWarning("您確認要創(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());
????????????}
????????}


調用代碼的測試輸出如下所示。

C#開發(fā)微信門戶及應用-微信企業(yè)號的菜單管理

?

更多C#開發(fā)微信門戶及應用-微信企業(yè)號的菜單管理?相關文章請關注PHP中文網(wǎng)!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial PHP
1502
276