


C# développe le portail WeChat et applique la gestion des menus du compte d'entreprise WeChat
Mar 02, 2017 am 09:32 AMLes articles précédents ont présenté de nombreuses opérations connexes des comptes d'entreprise WeChat. Les comptes d'entreprise et les comptes officiels peuvent personnaliser les menus, ils peuvent donc également créer des menus, obtenir des listes et supprimer des menus via des API. Par conséquent, cet article continue d'explorer ce sujet. , nous présenterons les opérations de gestion des menus du compte d'entreprise. Le menu
peut nous fournir une entrée rapide dans de nombreux cas, et peut également être utilisé pour obtenir l'entrée principale des informations sur l'utilisateur Grace à l'interface de vérification OAuth2 et au menu de redirection personnalisé, nous pouvons obtenir l'utilisateur correspondant. ID, puis obtenez en outre les données pertinentes de l'utilisateur, qui peuvent être affichées au client.
1. Introduction générale du menu
Le traitement des événements du menu est le suivant, y compris les opérations de clic et de saut. à l'avenir, le compte d'entreprise pourra ajouter des fonctions de numérisation similaires à celles du menu. compte officiel. Actuellement, il n'y a que deux fonctions telles que l'opération de code et l'opération de photo.
L'interface officielle de définition de menu comprend les trois opérations suivantes, création de menu, acquisition de liste et suppression de menu, qui sont presque les mêmes que les opérations du compte officiel.
2. Définition de la classe d'entité et traitement de la définition de l'interface du menu
Nous définissons le menu, y compris la définition de certains de ses attributs, y compris Il y a un nom, un type, une clé, une URL et une référence de sous-menu pointant vers lui-même, de sorte que le menu peut être construit de manière cyclique sur plusieurs niveaux. Bien qu'à proprement parler, le menu du compte d'entreprise soit le même que le menu du compte officiel. , avec trois niveaux sur un seul niveau. Il existe un maximum de cinq menus de deuxième niveau et il n'y a pas de menu de troisième niveau.
Le diagramme UML de la classe d'entité est présenté ci-dessous.
L'opération de création de gestion de menu, la définition officielle est la suivante.
Instructions de demande
Méthode de demande HTTPS?: POST
https://qyapi.weixin.qq.com/cgi -bin/menu/create?access_token=ACCESS_TOKEN&agentid=1
Le package de requête est le suivant?:
{ ???"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" ???????????????} ???????????] ??????} ???] }
Description du paramètre
參數(shù) | 必須 | 說明 |
---|---|---|
access_token | 是 | 調(diào)用接口憑證 |
agentid | 是 | 企業(yè)應(yīng)用的id,整型。可在應(yīng)用的設(shè)置頁面查看 |
button | 是 | 一級(jí)菜單數(shù)組,個(gè)數(shù)應(yīng)為1~3個(gè) |
sub_button | 否 | 二級(jí)菜單數(shù)組,個(gè)數(shù)應(yīng)為1~5個(gè) |
type | 是 | 菜單的響應(yīng)動(dòng)作類型,目前有click、view兩種類型 |
name | 是 | 菜單標(biāo)題,不超過16個(gè)字節(jié),子菜單不超過40個(gè)字節(jié) |
key | click類型必須 | 菜單KEY值,用于消息接口推送,不超過128字節(jié) |
url | view類型必須 | 網(wǎng)頁鏈接,員工點(diǎn)擊菜單可打開鏈接,不超過256字節(jié) |
Description des autorisations
L'administrateur doit disposer des autorisations de gestion pour l'application et l'application doit être définie en mode de rappel.
Résultats de retour
{ ???"errcode":0, ???"errmsg":"ok" }
Selon la sémantique de définition officielle ci-dessus, la définition de l'interface de gestion C# de notre gestion de menus est la suivante.
????///?<summary> ????///?企業(yè)號(hào)菜單管理接口定義????///?</summary> ????public?interface?ICorpMenuApi ????{????????///?<summary> ????????///?獲取菜單數(shù)據(jù)????????///?</summary> ????????///?<param name="accessToken">調(diào)用接口憑證</param> ????????///?<returns></returns> ????????MenuListJson?GetMenu(string?accessToken,?string?agentid);????????///?<summary> ????????///?創(chuàng)建菜單????????///?</summary> ????????///?<param name="accessToken">調(diào)用接口憑證</param> ????????///?<param name="menuJson">菜單對(duì)象</param> ????????///?<returns></returns> ????????CommonResult?CreateMenu(string?accessToken,?MenuListJson?menuJson,?string?agentid);????????///?<summary> ????????///?刪除菜單????????///?</summary> ????????///?<param name="accessToken">調(diào)用接口憑證</param> ????????///?<returns></returns> ????????CommonResult?DeleteMenu(string?accessToken,?string?agentid); ????}
Nous prenons comme exemple la mise en ?uvre de la création d'un menu pour présenter le fonctionnement du menu du compte d'entreprise WeChat. D'autres opérations sont traitées. de la même manière et sont renvoyés Une classe de message publique pour un traitement et une lecture faciles. Le code est le suivant.
????????///?<summary> ????????///?創(chuàng)建菜單????????///?</summary> ????????///?<param name="accessToken">調(diào)用接口憑證</param> ????????///?<param name="menuJson">菜單對(duì)象</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. L'effet d'appel et de traitement de l'interface de gestion du menu du compte d'entreprise
Le code d'appel et effet L'image est présentée ci-dessous.
????????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://m.miracleart.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://m.miracleart.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()); ????????????} ????????}
La sortie de test du code appelant est présentée ci-dessous.
Pour plus de développement C# du portail WeChat et l'application de gestion des menus du compte d'entreprise WeChat, veuillez faire attention vers PHP chinois pour des articles connexes net?!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)