您好,登錄后才能下訂單哦!
這篇文章主要介紹了微信公眾平臺開發之自定義菜單接口的示例分析,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
一、自定義菜單規則
自定義菜單分為一級菜單和二級菜單。
一級菜單數量為1-3個,即打開公眾賬號直接可以看到排列在最下方的最多3個按鈕。一級菜單的文字最多不能超過16字節(相當于8個漢字)。
二級菜單從屬于一級菜單,數量為1-5個。二級菜單的文字不最多不能超過40字節(相當于20個漢字)。
無論一級菜單還是二級菜單,都有兩個觸發事件可以選擇,分別是:點擊(click,值不能超過128字節)和打開網址(view,url不能超過256個字節)。
當一個一級菜單下有二級菜單存在的時候,這個一級菜單按鈕被點擊不會有任何事件發生。
二、創建菜單
使用Senparc.Weixin.MP SDK創建自定義菜單非常簡單。只需三步:
第一步:獲取AccessToken
var accessToken = AccessTokenContainer.TryGetToken(appId, appSecret).access_token;
PS:如果第三步中使用AppId取代AccessToken,則這一步可以省略。
第二步:組織菜單內容
ButtonGroup bg = new ButtonGroup(); //單擊 bg.button.Add(new SingleClickButton() { name = "單擊測試", key = "OneClick", type = ButtonType.click.ToString(),//默認已經設為此類型,這里只作為演示 }); //二級菜單 var subButton = new SubButton() { name = "二級菜單" }; subButton.sub_button.Add(new SingleClickButton() { key = "SubClickRoot_Text", name = "返回文本" }); subButton.sub_button.Add(new SingleClickButton() { key = "SubClickRoot_News", name = "返回圖文" }); subButton.sub_button.Add(new SingleClickButton() { key = "SubClickRoot_Music", name = "返回音樂" }); subButton.sub_button.Add(new SingleViewButton() { url = "http://weixin.senparc.com", name = "Url跳轉" }); bg.button.Add(subButton);
第三步:提交到微信服務器
var result = CommonApi.CreateMenu(accessToken, bg);
上面SingleClickButton和SingleViewButton分別對應了click和view兩種菜單響應方式。
三、菜單查詢
查詢菜單同樣需要按照上面的方式獲取AccessToken,然后只需要一行代碼:
var result = CommonApi.GetMenu(accessToken);
得到的result.menu的結構即類似上述創建菜單時的ButtonGroup bg變量。
四、菜單刪除
得到AccessToken后,刪除菜單同樣只需要一行代碼:
var result = CommonApi.DeleteMenu(accessToken);
五、菜單響應事件
無論是click還是view,服務器都會收到不同的事件響應(見《微信公眾平臺開發:了解MessageHandler》,分別觸發OnEvent_ClickRequest()和OnEvent_ViewRequest()。
不同的是,click之后客戶端可以得到返回信息,而view在收到請求后,無論返回什么信息,客戶端都無法收到(直接打開URL了)。
六、自定義菜單可視化編輯器
目前盛派網絡在兩個地方提供了免費的自定義菜單可視化編輯器,免去大家需要運行代碼才能操作菜單的困境:
第一代:http://sdk.weixin.senparc.com/Menu
第二代:微微嗨(http://www.weiweihi.com),注冊添加微信公眾賬號之后即可獲得一系列強大的管理功能(下圖為微微嗨第一版,現已更新,可同樣在后臺左側菜單找到)。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“微信公眾平臺開發之自定義菜單接口的示例分析”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。