Les applications WeChat battent leur plein et de nombreuses entreprises espèrent accéder à l'information express. Il s'agit d'une opportunité commerciale et d'une direction technique. Par conséquent, rechercher et apprendre le développement lié à WeChat lorsque vous en avez le temps est devenu l'un des objectifs. choses importantes dans les plans quotidiens. Cette série d'articles espère présenter de manière exhaustive le processus de développement pertinent et le résumé de l'expérience pertinente de WeChat dans une perspective étape par étape, dans l'espoir de donner à chacun une compréhension du processus de développement pertinent. Cet essai se concentre principalement sur la préparation préliminaire du processus de développement de WeChat et l'introduction de certains travaux initiaux.
Au cours de la semaine précédant la rédaction de cet article, j'ai principalement fait référence à quelques articles d'introduction et aux instructions d'interface associées de la plateforme publique WeChat, combinés au développement de code C#, pour trier l'interface du portail de mon entreprise et implémenter WeChat au fur et à mesure du travail progresse, de plus en plus de fonctions peuvent être ajoutées au travail préliminaire d'interaction utilisateur et d'affichage d'informations du compte professionnel, et j'espère étendre l'interface WeChat du point de vue de l'application, afin de réaliser mon exploration technique et ma compréhension de l'interface WeChat. .
Pour développer et utiliser l'API de la plateforme WeChat, vous devez vous inscrire sur la plateforme publique de WeChat (https://mp.weixin.qq.com/) et disposer d'un Compte de service ou Compte d'abonnement. Le compte de service est principalement destiné aux entreprises et aux organisations. Il existe certaines différences entre eux. besoins.
Pour utiliser certaines interfaces avancées, vous devrez peut-être disposer d'un compte de service et d'une authentification avancée. Lors du processus d'enregistrement du compte, vous devez télécharger un formulaire de demande, l'imprimer et le tamponner du sceau officiel. De plus, le demandeur doit prendre une photo avec sa carte d'identité (un peu bizarre, haha), puis ensuite. téléchargez-le sur le serveur pour examen. Généralement, l’approbation peut être obtenue rapidement.
J'ai demandé un compte de service au nom de l'entreprise. Une fois le compte enregistré, vos informations pertinentes seront affichées sur l'interface principale. De plus, un code QR sera appliqué pour vous. Le code QR pour accéder au compte de l'entreprise suit la boîte de dialogue de confirmation, ce qui est très pratique. Voici le code QR de mon compte d'entreprise après ma candidature, qui peut être scanné directement.
WeChat a deux façons de définir le menu, l'une est le mode d'édition et l'autre est le mode de développement. Les deux interagissent. les uns avec les autres. Exclusion, c'est-à-dire qu'une fois qu'on adopte le mode développement, on ne peut plus utiliser le mode édition, et vice versa. Le menu en cours d'édition peut effectivement être géré, mais WeChat ne le prend pas en charge, ce qui me rend très mécontent.
Dans des circonstances normales, si nous venons de demander un numéro WeChat, nous pouvons utiliser le menu d'édition pour le tester et modifier certains menus selon les instructions. Bien que WeChat indique qu'il sera mis à jour dans les 24 heures, il est généralement mis à jour très rapidement, peut-être en une minute ou deux au plus rapidement, ce qui fait du bien.
Pour utiliser le mode développeur, vous devez placer un lien de page sur le serveur selon les exigences de WeChat. Si vous le développez en C#, vous pouvez utiliser la méthode de dénomination ***.ashx et utiliser le traitement général. programme d'Asp.NET Voilà, pas besoin d'utiliser une page normale.
Utilisez le menu du mode développement, c'est-à-dire que vous pouvez appeler l'API WeChat pour créer le menu. Pour appeler l'API WeChat (WeChat a de nombreuses API à appeler), nous devons connaître l'importance de plusieurs paramètres. Ainsi, lorsque le mode développement est activé, ces paramètres seront répertoriés pour vous, comme indiqué ci-dessous.
Comme mentionné ci-dessus, si vous postulez au mode développement pour effectuer des appels de menu ou d'autres API, vous devez réussir il a réussi Le test d'accès à WeChat signifie confirmer que le lien que vous avez rempli existe et peut réussir le test de rappel de WeChat. WeChat fournit un exemple de traitement de page PHP. Si nous le développons en C#, nous pouvons effectuer une recherche et nous obtiendrons la réponse. Ma méthode de traitement est la suivante.
Créez un programme de traitement général, puis ajoutez une logique de traitement à sa page de traitement. S'il s'agit d'un contenu non POST, cela signifie que le test Get effectué par WeChat doit ajouter une logique de traitement et lui donner. vers votre Transférez simplement le contenu. S'il est en mode POST, c'est l'opération de demande du serveur WeChat pour le message d'interface, qui sera présentée plus tard.
/// <summary> /// 微信接口。统一接收并处理信息的入口。 /// </summary> public class wxapi : IHttpHandler { public void ProcessRequest(HttpContext context) { string postString = string.Empty; if (HttpContext.Current.Request.HttpMethod.ToUpper() == "POST") { using (Stream stream = HttpContext.Current.Request.InputStream) { Byte[] postBytes = new Byte[stream.Length]; stream.Read(postBytes, 0, (Int32)stream.Length); postString = Encoding.UTF8.GetString(postBytes); } if (!string.IsNullOrEmpty(postString)) { Execute(postString); } } else { Auth(); //微信接入的测试 } }
De manière générale, dans la fonction Auth, les paramètres pertinents sont obtenus, puis traités et renvoyés au serveur WeChat.
string token = "****";//你申请的时候填写的Token string echoString = HttpContext.Current.Request.QueryString["echoStr"]; string signature = HttpContext.Current.Request.QueryString["signature"]; string timestamp = HttpContext.Current.Request.QueryString["timestamp"]; string nonce = HttpContext.Current.Request.QueryString["nonce"];
Le code complet de la fonction Auteur est le suivant, dans lequel j'ai ensuite extrait la logique métier dans une nouvelle classe pour faciliter la gestion de la logique métier.
/// <summary> /// 成为开发者的第一步,验证并相应服务器的数据 /// </summary> private void Auth() { string token = ConfigurationManager.AppSettings["WeixinToken"];//从配置文件获取Token if (string.IsNullOrEmpty(token)) { LogTextHelper.Error(string.Format("WeixinToken 配置项没有配置!")); } string echoString = HttpContext.Current.Request.QueryString["echoStr"]; string signature = HttpContext.Current.Request.QueryString["signature"]; string timestamp = HttpContext.Current.Request.QueryString["timestamp"]; string nonce = HttpContext.Current.Request.QueryString["nonce"]; if (new BasicApi().CheckSignature(token, signature, timestamp, nonce)) { if (!string.IsNullOrEmpty(echoString)) { HttpContext.Current.Response.Write(echoString); HttpContext.Current.Response.End(); } } }
Le code pour signer et renvoyer le paramètre WeChat CheckSignature est le suivant.
/// <summary> /// 验证微信签名 /// </summary> public bool CheckSignature(string token, string signature, string timestamp, string nonce) { string[] ArrTmp = { token, timestamp, nonce }; Array.Sort(ArrTmp); string tmpStr = string.Join("", ArrTmp); tmpStr = FormsAuthentication.HashPasswordForStoringInConfigFile(tmpStr, "SHA1"); tmpStr = tmpStr.ToLower(); if (tmpStr == signature) { return true; } else { return false; } }
Une fois que vous aurez réussi l'authentification de WeChat, cela vous permettra d'appeler son API en mode développement et de créer votre menu à volonté.
Pour créer un menu, vous pouvez accéder à son interface de traitement API via l'emplacement suivant.
Après être entré, vous constaterez que WeChat a divisé le traitement de nombreux messages en différentes catégories.
En fait, ce que nous devons faire dans un premier temps est de voir comment utiliser le code pour créer un menu et entrer dans l'interface de débogage API du menu.
Vous constaterez que vous devez également saisir un Access_Token. Il s'agit d'une authentification de session, vous devez donc vous rendre dans l'interface pour savoir comment la créer. Les deux parties rouges dans l'image ci-dessous sont les deux paramètres clés des « informations d'identification du développeur » que WeChat nous a demandé lorsque nous avons commencé.
Après cela, vous pouvez créer le menu en fonction de l'Access_Token que vous avez obtenu. Selon la définition du menu, il est divisé en plusieurs catégories, qui peuvent être divisées. en méthodes URL (Affichage), mode événement (Clic).
clic : une fois que l'utilisateur a cliqué sur le bouton de type de clic, le serveur WeChat transmettra la structure de l'événement de type de message au développeur via l'interface de message (voir le guide de l'interface de message), et apportez-le au bouton pour le développement La valeur clé renseignée par l'utilisateur, le développeur peut interagir avec l'utilisateur via la valeur clé personnalisée
vue : une fois que l'utilisateur a cliqué sur le bouton de type d'affichage, le Le client WeChat s'ouvrira et le développeur pourra remplir le bouton. La valeur de l'URL (c'est-à-dire le lien de la page Web) peut atteindre l'objectif d'ouvrir la page Web. Il est recommandé de la combiner avec l'autorisation de la page Web pour obtenir les informations de base de l'utilisateur. interface d'information pour obtenir les informations personnelles de connexion de l'utilisateur.
Au début de l'essai, j'ai publié un code QR Une fois que vous utilisez WeChat pour le scanner, suivez le compte de service. , alors vous pouvez voir le menu que j'ai créé. Le menu principal comporte généralement jusqu'à trois colonnes. Chaque menu principal peut également comporter des sous-menus, et leur texte est limité.
Jetons un coup d'œil au menu du portail WeChat de mon entreprise, n'est-ce pas cool ?
Plus de développement C# de portails et d'applications WeChat (1) - Pour les articles connexes sur la façon de commencer à utiliser l'interface WeChat, veuillez faire attention au PHP Site chinois !