Heim >WeChat-Applet >WeChat-Entwicklung >C#-Entwicklung des WeChat-Portals und der WeChat-Anwendungen (1) – Beginnen Sie mit der Verwendung der WeChat-Schnittstelle
WeChat-Anwendungen sind in vollem Gange, und viele Unternehmen hoffen, in den Informationsexpress aufgenommen zu werden. Dies ist eine Geschäftsmöglichkeit und eine technische Richtung. Daher ist es zu einer der wichtigsten Aufgaben geworden, sich über WeChat-bezogene Entwicklungen zu informieren wichtige Dinge in täglichen Plänen. Ziel dieser Artikelserie ist es, den relevanten Entwicklungsprozess und die damit verbundene Erfahrungszusammenfassung von WeChat Schritt für Schritt umfassend vorzustellen und allen ein Verständnis für den relevanten Entwicklungsprozess zu vermitteln. Dieser Aufsatz konzentriert sich hauptsächlich auf die vorbereitende Vorbereitung des WeChat-Entwicklungsprozesses und die Einführung einiger erster Arbeiten.
In der Woche vor dem Schreiben dieses Artikels habe ich hauptsächlich auf einige Einführungsartikel und zugehörige Schnittstellenanweisungen der öffentlichen WeChat-Plattform verwiesen, kombiniert mit der Entwicklung von C#-Code, um die Portalschnittstelle meines Unternehmens zu sortieren und WeChat als Arbeit zu implementieren Mit fortschreitendem Fortschritt können immer mehr Funktionen zur vorläufigen Benutzerinteraktion und Informationsanzeige des Arbeitskontos hinzugefügt werden. Ich hoffe, die WeChat-Schnittstelle aus Anwendungsperspektive zu erweitern, um meine technische Erkundung und mein Verständnis der WeChat-Schnittstelle zu verwirklichen. .
Um die Plattform-API von WeChat zu entwickeln und zu nutzen, müssen Sie sich auf der öffentlichen Plattform von WeChat (https://mp.weixin.qq.com/) registrieren und über ein Dienstkonto oder Abonnementkonto ist hauptsächlich für Unternehmen und Organisationen gedacht. Es gibt bestimmte Unterschiede zwischen ihnen Konto benötigt.
Um einige erweiterte Schnittstellen nutzen zu können, benötigen Sie möglicherweise ein Dienstkonto und eine erweiterte Authentifizierung. Bei der Kontoregistrierung müssen Sie ein Antragsformular herunterladen, es ausdrucken und mit dem offiziellen Siegel versehen. Außerdem muss der Antragsteller ein Foto mit dem Personalausweis machen (etwas seltsam, haha) und es dann hochladen Im Allgemeinen kann die Genehmigung schnell eingeholt werden. Ich habe ein Dienstkonto im Namen des Unternehmens beantragt. Nachdem das Konto registriert wurde, werden Ihre relevanten Informationen auf der Hauptoberfläche angezeigt Der QR-Code zur Eingabe des WeChat-Kontos folgt dem Bestätigungsdialogfeld, was sehr praktisch ist. Nachfolgend finden Sie den QR-Code meines Firmenkontos nach meiner Bewerbung, der direkt gescannt werden kann./// <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(); //微信接入的测试 } }Im Allgemeinen werden in der Auth-Funktion die relevanten Parameter abgerufen, dann verarbeitet und an den WeChat-Server zurückgegeben.
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"];Der vollständige Author-Funktionscode lautet wie folgt, in dem ich die Geschäftslogik weiter in eine neue Klasse extrahiert habe, um die Verwaltung der Geschäftslogik zu erleichtern.
/// <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(); } } }Der Code zum Signieren und Zurückgeben des WeChat-Parameters CheckSignature lautet wie folgt.
/// <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; } }
Sobald Sie die Authentifizierung von WeChat erfolgreich bestanden haben, können Sie die API im Entwicklungsmodus aufrufen und Ihr Menü nach Belieben erstellen.
Um ein Menü zu erstellen, können Sie dessen API-Verarbeitungsschnittstelle über den folgenden Speicherort aufrufen.
Nach der Eingabe werden Sie feststellen, dass WeChat die Verarbeitung vieler Nachrichten in verschiedene Kategorien unterteilt hat.
Tatsächlich müssen wir zunächst sehen, wie man mit Code ein Menü erstellt und die API-Debugging-Schnittstelle des Menüs aufruft.
Sie werden feststellen, dass Sie auch ein Access_Token eingeben müssen. Dabei handelt es sich um eine Sitzungsauthentifizierung, Sie müssen also zur Schnittstelle gehen, um herauszufinden, wie Sie es erstellen. Die beiden roten Teile im Bild unten sind die beiden Schlüsselparameter der „Entwickleranmeldeinformationen“, die WeChat uns zu Beginn mitgeteilt hat.
Danach können Sie das Menü basierend auf dem erhaltenen Access_Token erstellen. Gemäß der Definition des Menüs ist es in mehrere Kategorien unterteilt, die unterteilt werden können in URL-Methoden (Ansicht), Ereignismodus (Klick).
Klick: Nachdem der Benutzer auf die Schaltfläche „Klicktyp“ geklickt hat, überträgt der WeChat-Server die Nachrichtentyp-Ereignisstruktur über die Nachrichtenschnittstelle an den Entwickler (siehe Anleitung zur Nachrichtenschnittstelle). Bringen Sie den vom Benutzer eingegebenen Schlüsselwert zur Schaltfläche für die Entwicklung. Der Entwickler kann mit dem Benutzer über den benutzerdefinierten Schlüsselwert interagieren Der WeChat-Client wird geöffnet und der Entwickler kann die Schaltfläche ausfüllen. Der URL-Wert (d. h. der Webseiten-Link) kann den Zweck des Öffnens der Webseite erfüllen. Es wird empfohlen, ihn mit der Webseiten-Autorisierung zu kombinieren, um die Grundberechtigung des Benutzers zu erhalten Informationsschnittstelle, um die persönlichen Anmeldeinformationen des Benutzers zu erhalten.