Maison Applet WeChat Développement WeChat Explication détaillée du modèle de développement de menu personnalisé WeChat

Explication détaillée du modèle de développement de menu personnalisé WeChat

Mar 22, 2017 pm 04:15 PM
微信开发

J'ai travaillé sur le développement d'un menu personnalisé WeChat la semaine dernière, dans l'ensemble, c'est assez déprimant.

Analysons d'abord quelques interfaces :

1 : Interface de requête ; l'interface de requête est divisée en deux, l'une est l'interface de requête ordinaire en mode développement, elle interrogera uniquement ce que vous transmettez. Ajouter les menus créés par l'interface et les menus personnalisés (permettant aux différents groupes d'utilisateurs du compte officiel de voir différents menus personnalisés), mais les menus que vous avez ajoutés via la plateforme de gestion WeChat ne peuvent pas être obtenus. Il existe également une interface qui peut interroger tous les menus. Cette interface est un peu pénible. Si vous ajoutez d'abord un menu à la plateforme, puis appelez cette interface en arrière-plan, vous pouvez obtenir le menu, mais le json est renvoyé en appelant ceci. L'interface est différente de celle lors de l'ajout. Le format est différent (c'est-à-dire que vous ne pouvez pas créer un menu si vous le renvoyez à votre json comme c'est le cas pour WeChat), et il existe de nombreux types de menus ajoutés à la plate-forme WeChat, et chacun type de json renvoyé Les formats sont tous différents et il est très difficile de les analyser, donc je pense personnellement que puisque j'ai choisi le mode développeur, il est préférable d'utiliser l'interface de requête ordinaire.

2 : Créer une interface ; la fonction de cette interface, comme son nom l'indique, est de créer une interface, mais cette interface n'est pas créée sur la base originale, mais recrée à chaque fois tous les menus. il s'appelle, vous le ferez. Les menus restants sont traités en json au format fixe puis envoyés à WeChat, donc si vous souhaitez les supprimer individuellement, vous pouvez supprimer le menu que vous souhaitez supprimer et changer le reste en json. il en va de même pour les modifications. Remplacez les données que vous devez modifier, puis convertissez l'intégralité du menu en json et envoyez-le à WeChat.

3 : Supprimer l'interface ; cette interface est utilisée pour supprimer tous les menus, mais elle ne prendra pas effet immédiatement. Après l'avoir appelée, il semble que vous ne verrez l'effet que le lendemain, et pendant ce temps. vous êtes toujours Vous pouvez interroger le menu que vous avez créé auparavant.

Ma tâche est d'intégrer l'ajout, la suppression, la modification et la requête du menu dans la gestion du backend. Ici, je parlerai uniquement de la façon de sortir de mon backend. La requête à l'interface WeChat renvoie un json. string. Mon approche consiste à analyser cette chaîne, à l'écrire dans un objet selon certaines règles et à l'ajouter à la liste. Utiliser la liste lors de l'ajout, de la suppression ou de la modification, puis reconvertir la liste en json dans le format requis par WeChat, et. appelez l'interface WeChat pour créer le menu. (L'interface de création est appelée pour les ajouts, suppressions et modifications). Mes attributs dans la partie objet sont id (définissez l'indice de la liste sur id pour une utilisation facile), nom (nom du menu), type (type de menu, il existe 10 types de menus personnalisés WeChat), parent (nom du menu parent) ) , SecendLvMenu (nombre de menus secondaires), url (obligatoire pour le menu de liens), clé (fonction d'appel push), mediaid (

doit définir madia_id lors de l'appel des matériaux), sort (numéro de tri).

Voici le code pour convertir json en liste. Le package json ici est le package fastjson d'Alibaba, qui est assez facile à utiliser :

public static List {

Liste menulist=new ArrayList();

obj=obj.getJSONObject("menu");

JSONObject a=new JSONObject( );

int num=0;

if(obj!=null){

//Obtenir le tableau json du bouton

JSONArray array= obj.getJSONArray("bouton");

if(array!=null){

for(int i=0;i

a= array.getJSONObject(i);

//Aucune description de type n'est un menu de premier niveau avec un type de menu de deuxième niveau

if(a.get("type ")==null){

weixinMenu menu=new weixinMenu();

menu.setId(num);

menu.setSort(num);

num++;

menu.setName(a.getString("name"));//Définissez l'indice, définissez le numéro de tri et stockez-le dans la liste

//Get le menu de deuxième niveau sous le menu de premier niveau

JSONArray sub=a.getJSONArray("sub_button");

//Le nombre de menus secondaires Depuis la limite supérieure des menus secondaires. est 5, il est facile de juger lors de l'ajout d'un nombre

menu.setSecendLvMenuNum(sub.size());

menulist.add(menu);

JSONObject b =new JSONObject();

for(int j =0;j

weixinMenu menu2=new weixinMenu();

b=sub.getJSONObject(j);

menu2 .setId(num);

menu2.setSort(num);

num++;

menu2 .setName(b.getString("name"));

menu2.setParent(a.getString("name"));//Le menu parent est le nom du menu de premier niveau à l'instant

menu2.setType(b.getString("type"));

menu2.setUrl(b.getString("url"));

menu2.setKey(b .getString("key"));

menu2.setMediaId(b .getString("media_id"));

menulist.add(menu2);

}

}else{//Sinon c'est un menu de premier niveau sans menu de deuxième niveau, cliquez pour sauter directement ou déclencher l'événement correspondant

weixinMenu menu=new weixinMenu();

menu.setId(num);

menu.setSort(num);

num++;

menu.setName(a.getString("name") );

menu.setParent(null);

menu.setSecendLvMenuNum( 0);

menu.setType(a.getString("type"));

menu.setUrl(a.getString("url"));

menu.setKey(a.getString("key"));

menu.setMediaId(a.getString("media_id"));

menulist.add(menu);

}

}

}

}

retour à la liste du menu ;

}

Ensuite, convertissez la liste en weixinJson. Le téléchargement du json de WeChat ne nécessite que la partie bouton :

public static JSONObject listToWxJson(List list){

JSONArray array=new JSONArray();

weixinMenu menu=new weixinMenu();

int size=list.size();

for(int i=0;i

menu=list.get(i);

//Pas de menu de deuxième niveau et pas de menu parent, alors il n'y a pas de menu de premier niveau de type deuxième niveau

if(menu .getSecendLvMenuNum( )==0&&menu.getParent()==null){

Map map=new HashMap();

map.put( "name", menu.getName());

map.put("type", menu.getType());

if(menu.getUrl()!=null){

map.put("url", menu.getUrl());

}

if(menu.getKey()!=null){

map .put("key", menu.getKey());

}

if(menu.getMediaId()!=null){

map. put(" media_id", menu.getMediaId());

}

array.add(map);

}else if(menu.getParent()== null){ Un menu sans parent est un menu de premier niveau avec un deuxième niveau

JSONObject obj=new JSONObject();

JSONArray sub=new JSONArray();

obj.put( "name",menu.getName());

weixinMenu submenu=new weixinMenu();

//Parcourez la liste entière et utilisez la correspondance de nom pour trouver le menu de deuxième niveau sous le menu de premier niveau

for(int j=0;j

submenu=list.get(j);

Map map=null ;

if((menu.getName()).equals(submenu.getParent())){

map=new HashMap();

map.put("name", submenu.getName());

map.put("type", submenu.getType());

if(submenu.getUrl() !=null){

map.put("url", submenu.getUrl());

}

if(submenu.getKey()!=null) {

map.put("key", submenu.getKey());

}

if(submenu. getMediaId()!=null){

map.put("media_id", submenu.getMediaId());

}

sub.add(map);

}

}

obj.put("sub_button",sub);

array.add(obj);

}

}

Map map=new HashMap();

map.put("button",array);

//Enfin, convertissez la carte directement en json

return (JSONObject)JSONObject.toJSON(map);

}

Cet ensemble est fondamentalement corrigé, et le menu WeChat peut être analysé en liste, une fois l'opération terminée, convertissez json et les opérations ultérieures seront beaucoup plus faciles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Développement PHP WeChat : Comment implémenter le cryptage et le décryptage des messages Développement PHP WeChat : Comment implémenter le cryptage et le décryptage des messages May 13, 2023 am 11:40 AM

PHP est un langage de script open source largement utilisé dans le développement Web et la programmation côté serveur, notamment dans le développement de WeChat. Aujourd'hui, de plus en plus d'entreprises et de développeurs commencent à utiliser PHP pour le développement de WeChat, car il est devenu un langage de développement vraiment facile à apprendre et à utiliser. Dans le développement de WeChat, le cryptage et le décryptage des messages sont une question très importante car ils impliquent la sécurité des données. Pour les messages sans méthodes de cryptage et de décryptage, les pirates peuvent facilement obtenir les données, ce qui constitue une menace pour les utilisateurs.

Utiliser PHP pour développer des outils de messagerie de masse WeChat Utiliser PHP pour développer des outils de messagerie de masse WeChat May 13, 2023 pm 05:00 PM

Avec la popularité de WeChat, de plus en plus d’entreprises commencent à l’utiliser comme outil marketing. La fonction de messagerie de groupe WeChat est l'un des moyens importants permettant aux entreprises de mener du marketing WeChat. Cependant, si vous comptez uniquement sur l’envoi manuel, il s’agit d’une tâche extrêmement longue et laborieuse pour les spécialistes du marketing. Il est donc particulièrement important de développer un outil de messagerie de masse WeChat. Cet article présentera comment utiliser PHP pour développer des outils d'envoi de masse WeChat. 1. Travail de préparation Pour développer les outils d'envoi de masse WeChat, nous devons maîtriser les points techniques suivants : Connaissance de base du développement de la plateforme publique PHP WeChat Outils de développement : Sub

Développement PHP WeChat : Comment implémenter la gestion des balises utilisateur Développement PHP WeChat : Comment implémenter la gestion des balises utilisateur May 13, 2023 pm 04:31 PM

Dans le développement des comptes publics WeChat, la gestion des balises utilisateur est une fonction très importante, qui permet aux développeurs de mieux comprendre et gérer leurs utilisateurs. Cet article explique comment utiliser PHP pour implémenter la fonction de gestion des balises utilisateur WeChat. 1. Obtenez l'openid de l'utilisateur WeChat Avant d'utiliser la fonction de gestion des balises utilisateur WeChat, nous devons d'abord obtenir l'openid de l'utilisateur. Dans le développement des comptes publics WeChat, il est courant d'obtenir l'openid via l'autorisation de l'utilisateur. Une fois l'autorisation de l'utilisateur terminée, nous pouvons obtenir l'utilisateur via le code suivant

Développement PHP WeChat : Comment implémenter des enregistrements d'envoi de messages de groupe Développement PHP WeChat : Comment implémenter des enregistrements d'envoi de messages de groupe May 13, 2023 pm 04:31 PM

Alors que WeChat devient un outil de communication de plus en plus important dans la vie des gens, sa fonction de messagerie agile est rapidement privilégiée par un grand nombre d'entreprises et de particuliers. Pour les entreprises, développer WeChat en une plate-forme marketing est devenu une tendance, et l'importance du développement de WeChat est progressivement devenue plus importante. Parmi eux, la fonction d'envoi de groupe est encore plus largement utilisée. Alors, en tant que programmeur PHP, comment implémenter des enregistrements d'envoi de messages de groupe ? Ce qui suit vous donnera une brève introduction. 1. Comprendre les connaissances en développement liées aux comptes publics WeChat. Avant de comprendre comment mettre en œuvre des enregistrements d'envoi de messages de groupe, je

Développement PHP WeChat : Comment implémenter la gestion des fenêtres de discussion du service client Développement PHP WeChat : Comment implémenter la gestion des fenêtres de discussion du service client May 13, 2023 pm 05:51 PM

WeChat est actuellement l'une des plateformes sociales comptant la plus grande base d'utilisateurs au monde. Avec la popularité de l'Internet mobile, de plus en plus d'entreprises commencent à prendre conscience de l'importance du marketing WeChat. Lors du marketing WeChat, le service client est un élément crucial. Afin de mieux gérer la fenêtre de discussion du service client, nous pouvons utiliser le langage PHP pour le développement de WeChat. 1. Introduction au développement PHP WeChat PHP est un langage de script open source côté serveur largement utilisé dans le domaine du développement Web. En combinaison avec l'interface de développement fournie par la plateforme publique WeChat, nous pouvons utiliser le langage PHP pour mener WeChat

Développement PHP WeChat : Comment implémenter la fonction de vote Développement PHP WeChat : Comment implémenter la fonction de vote May 14, 2023 am 11:21 AM

Dans le développement des comptes publics WeChat, la fonction de vote est souvent utilisée. La fonction de vote est un excellent moyen pour les utilisateurs de participer rapidement aux interactions, et c'est également un outil important pour organiser des événements et recueillir des opinions. Cet article vous présentera comment utiliser PHP pour implémenter la fonction de vote WeChat. Obtenez l'autorisation du compte officiel WeChat. Tout d'abord, vous devez obtenir l'autorisation du compte officiel WeChat. Sur la plateforme publique WeChat, vous devez configurer l'adresse API du compte public WeChat, le compte officiel et le token correspondant au compte public. Dans le processus de développement en langage PHP, nous devons utiliser le PH officiellement fourni par WeChat

Développement PHP WeChat : Comment implémenter la reconnaissance vocale Développement PHP WeChat : Comment implémenter la reconnaissance vocale May 13, 2023 pm 09:31 PM

Avec la popularité de l'Internet mobile, de plus en plus de personnes utilisent WeChat comme logiciel social, et la plateforme ouverte WeChat a également apporté de nombreuses opportunités aux développeurs. Ces dernières années, avec le développement de la technologie de l’intelligence artificielle, la technologie de reconnaissance vocale est progressivement devenue l’une des technologies les plus populaires dans le développement de terminaux mobiles. Dans le développement de WeChat, la manière de mettre en œuvre la reconnaissance vocale est devenue une préoccupation pour de nombreux développeurs. Cet article expliquera comment utiliser PHP pour développer des applications WeChat afin d'implémenter des fonctions de reconnaissance vocale. 1. Principes de la reconnaissance vocale Avant de présenter comment mettre en œuvre la reconnaissance vocale, comprenons d'abord le langage

Comment utiliser PHP pour le développement WeChat ? Comment utiliser PHP pour le développement WeChat ? May 21, 2023 am 08:37 AM

Avec le développement d’Internet et des appareils mobiles intelligents, WeChat est devenu un élément indispensable dans les domaines social et marketing. Dans cette ère de plus en plus numérique, la manière d'utiliser PHP pour le développement de WeChat est devenue la préoccupation de nombreux développeurs. Cet article présente principalement les points de connaissances pertinents sur la façon d'utiliser PHP pour le développement WeChat, ainsi que certains conseils et précautions. 1. Préparation de l'environnement de développement Avant de développer WeChat, vous devez d'abord préparer l'environnement de développement correspondant. Plus précisément, vous devez installer l'environnement d'exploitation PHP et la plateforme publique WeChat

See all articles