


Verwendung von Delphi+intraweb für die WeChat-Nachrichtenverarbeitung
Feb 24, 2017 pm 04:22 PMIn der zweiten Vorlesung wird Delphi + Intraweb für die WeChat-Entwicklung 2 verwendet – Intraweb wird im .net-Modus ver?ffentlicht (bereitgestellt im asp.net mvc4-Modus). Auf IIS (virtueller .net-Host) haben wir die iw-Anwendung erfolgreich bereitgestellt Die virtuelle Cloud Auf dem Host setzen wir in dieser Vorlesung den Inhalt der ersten Vorlesung fort und kehren zur WeChat-Entwicklung zurück, wobei wir diesmal die WeChat-Nachrichtenverarbeitung erl?utern.
Kl?ren Sie zun?chst einige Wissenspunkte:
1. Die HTTP-Post-Methode, die der WeChat-Server zum Weiterleiten von Benutzernachrichten verwendet, haben wir nicht erw?hnt HTTP-Datenübermittlungsmethode des WeChat-Servers: WeChat verwendet tats?chlich die HTTP-Get-Methode zur Zugriffsüberprüfung, w?hrend es die HTTP-Post-Methode verwendet, und wenn Nachrichten weitergeleitet werden, werden die Nachrichten im XML-Format, ContentType, codiert =text/xml.
2. Für die Weiterleitung von WeChat-Servern stehen drei Datenübertragungsmethoden zur Auswahl: 1. Nur-Text; 3. Gemischt. In diesem Artikel verwenden wir zur Vereinfachung des Debuggens Klartext zum übertragen von Daten. In der n?chsten Vorlesung wird die Verarbeitung von Nachrichtenverschlüsselungsverfahren erl?utert.
Ich hatte ursprünglich das Gefühl, dass der Inhalt dieser Vorlesung nicht schwierig war. Er sollte mit .net, PHP oder sogar Delphi Webbroker einfach zu implementieren sein. Aber nachdem ich iw verwendet hatte, stellte ich fest, dass das Problem sehr kompliziert ist!
iwDie Klasse, die http-Anforderungsdaten verarbeitet, ist THttpRequest, aber ich habe die Eigenschaften und Methoden von THttpRequest durchgesehen und konnte keinen Ort finden, an dem ich direkt auf http-Inhalte zugreifen kann. Es scheint nur eine THttpRequest.ContentFields-Eigenschaft zu geben Lesen Sie den http-Inhalt. Nach der tats?chlichen Ausführung des Codes und dem Debuggen wurde jedoch festgestellt, dass dieses Attribut die XML-Datei überhaupt nicht vom WeChat-Server übergeben kann und der Inhalt immer leer ist.
Nach wiederholter überprüfung wurde festgestellt, dass dieses ContentFields-Attribut nur für den übergebenen Schlüsselwert gültig ist, wenn der ContentType in der http-Anfrage application/x-www-form-urlencoded ist, d. h. er kann abgerufen werden Für die übermittlung des Formulartyps ist dies beim WeChat-Zugriff in der ersten Vorlesung der Fall. Die von WeChat übergebenen Signaturen, Zeitstempel, Nonce und andere Feldwerte k?nnen über THttpRequest.ContentFields entnommen werden.
Die Dinge haben sich mittlerweile zu einem v?lligen Dilemma entwickelt. Wie kann man also die Klassenmethode THttpRequest verwenden, um den Inhalt zu erhalten, wenn ContentType=text/xml? Nach Recherchen habe ich herausgefunden, dass die THttpRequest-Klasse ein Dateiattribut hat. Damals hatte ich das Gefühl, dass die Hoffnung in diesem Attribut liegt. XML kann doch auch als Datei hochgeladen werden, oder? Haha, leider war die Anzahl der Dateien mit diesem Attribut immer 0, egal wie sehr ich damals experimentiert habe (ich habe es zum Zerlegen der DCU verwendet), und diese Hoffnung war verloren!
Also habe ich eine Nachricht im offiziellen iw-Fragenforum gepostet und angefangen, um Rat zu fragen. Ein bis zwei Tage lang lasen immer Leute, aber nachdem ich viele Male nach verwandten Fragen gesucht hatte, fand ich das Als ich die gleiche Frage hatte, antwortete der Autor, dass der Fragesteller unklar sei und bat darum, dem Autor den Code per E-Mail zu senden. Ich habe mich sofort als der Fragesteller ausgegeben Code und habe die Frage angeh?ngt. Ja, Lost in the Ocean, haha, es ist wirklich nicht einfach, dich so sehr zu lieben.
Es gibt keine M?glichkeit, weiter nach den Fragen anderer Leute zu suchen. Endlich habe ich einen Beitrag gefunden, in dem die Frage des Fragestellers anders war als meine, aber der Beantworter erw?hnte, dass es eine gibt PostFormData-Beispiel im iw-Demos-Projekt, ich habe sofort die heruntergeladene Demo überprüft und festgestellt, dass es überhaupt kein solches Projekt gibt. Ich bin auf die offizielle Website gegangen, um das Beispielprojekt erneut herunterzuladen, haha, endlich ist es da! ?ffnen Sie den Code und schauen Sie nach, es stellt sich heraus, dass dies der Fall ist! Genau wie in der ersten Vorlesung hat mich eine Codezeile mehrere Tage lang gest?rt.
Liebe Freunde, schaut mal rein:
ist die Methode ?RegisterContentType“, haha, f?llt euch das ein? Wird es in der Hilfe erw?hnt? Heilige Schei?e!
Okay, es funktioniert endlich. Nach dem Hinzufügen der Inhaltstypregistrierung k?nnen Sie THttpRequest.Files verwenden, um die gepostete XML-Datei abzurufen. Es ist ein kleiner Trost. .
Liebe Freunde, ich erz?hle euch von meiner blutigen und tr?nenreichen Reise. Für Webentwicklungs-Frameworks wie iw, die unvollst?ndige Hilfe und keinen Quellcode haben, sind die Suche im Fragenbereich und iw-Demos unsere gr??ten Wir müssen iw verwenden, laden Sie einfach die neueste Demo herunter und werfen Sie einen Blick darauf.
Es gibt nichts mehr zu sagen. Ich werde einen Screenshot des Codes posten, damit jeder einen Blick darauf werfen kann. Es ist einfacher, der Dokumentation von WeChat zu folgen:
TEventHandler-Klasse:
Test-Screenshot mit WeChat-Client nach der Bereitstellung auf dem Server:
Wenn Sie das sehen, okay, lassen Sie mich Ihnen ein kleines Geheimnis verraten:
Nach wiederholten Tests von mir ist die Methode ?RegisterContentType“ nur im SA- und ISAPI-Modus verfügbar Wenn ich es gem?? dem zweiten Tutorial in eine Bibliothek kompiliere und es gem?? dem ASPX-Modus bereitstelle, kann ich die XML-Datei trotzdem nicht abrufen, da sich aufgrund der Bereitstellungsanforderungen kein anderer Code ge?ndert hat hat sich ge?ndert. Ich wei? nur nicht, warum. Der Screenshot, den Sie oben sehen, wurde auf meinem Server mithilfe von ISAPI bereitgestellt.
Fügen Sie abschlie?end die Codierungs- und Decodierungsfunktion des Datumsfelds im XML-Format der WeChat-Nachricht hinzu. Der Datumstyp ist ein ganzzahliger Wert, sodass der ganzzahlige Wert konvertiert werden muss ein TDateTime-Typ. Der Wert wird als zweite Differenz unter Verwendung von ?1970-01-01 00:00:00“ als Basiszeit berechnet. Beachten Sie au?erdem, dass die WeChat-Zeit UTC-Zeit ist, was bedeutet, dass bei der Umrechnung in Pekinger Zeit 8 Stunden hinzugefügt werden müssen.
/// Funktion?GetWxNow:?Int64; ( ///
/// Datum und Uhrzeit von WeChat sind alle vom Typ int64, was den zweiten Unterschied zwischen 1970-01-01 00:00:00 darstellt. Diese Funktion wird verwendet, um 1970-01-01 00:00:00 zurückzugeben Zeit > /// & lt; return & gt; 1970-01-01 00: 00: 00 & lt;/returns & gt;
Funktion
GetWxBaseDt: TDateTime
; begin ?? > := VarToDateTime(
'1970-01-01 00:00:00'; für WeChat, ausgedrückt in int64, ist es der zweite Unterschied zwischen der aktuellen Zeit und 1970-01-01 00:00:00
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Konvertieren Sie 3600*8 in UTC-Zeit und die zweite Differenz ist die WeChat-Zeit ??>?///
Jetzt,?GetWxBaseDt
)?-?3600?* ?8; ? ? ? ? Ende; ? ? ? ? function?GetWxNowStr
:?string
;
? ? ? ?var ? ? ? ? ? i64:?Int64; ? ? ? ?
beginnen ? ? ? ?
? i64?:=?GetWxNow; ? ? ? ?
? Ergebnis?:=?
IntToStr(i64); ? ? ? ?
end; ? ? ? ?
/// Der aus WeChat XML erhaltene Feldwert ?CreateTime“ wird als Parameter zum übergeben der Funktion verwendet
/// Konvertiert die Zeit in den TDatetime-Typ
///
// /
Funktion ConvertWxDtToDateTime(wxDt: string ): TDateTime;
var i64
: Int64; :=
StrToInt64(
wxDt); Ergebnis := IncSecond(
GetWxBaseDt, i64 + 3600*8); >;Weitere Artikel zur Verwendung von Delphi+intraweb für die WeChat-Nachrichtenverarbeitung finden Sie auf der chinesischen PHP-Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP ist eine Open-Source-Skriptsprache, die in der Webentwicklung und serverseitigen Programmierung, insbesondere in der WeChat-Entwicklung, weit verbreitet ist. Heutzutage beginnen immer mehr Unternehmen und Entwickler, PHP für die WeChat-Entwicklung zu verwenden, da es sich zu einer wirklich leicht zu erlernenden und benutzerfreundlichen Entwicklungssprache entwickelt hat. Bei der WeChat-Entwicklung sind die Nachrichtenverschlüsselung und -entschlüsselung ein sehr wichtiges Thema, da sie die Datensicherheit betreffen. Bei Nachrichten ohne Verschlüsselungs- und Entschlüsselungsmethoden k?nnen Hacker leicht an die Daten gelangen, was eine Bedrohung für Benutzer darstellt.

Bei der Entwicklung ?ffentlicher WeChat-Konten wird h?ufig die Abstimmungsfunktion verwendet. Die Voting-Funktion ist eine tolle M?glichkeit für Nutzer, sich schnell an Interaktionen zu beteiligen und ist darüber hinaus ein wichtiges Tool für die Durchführung von Veranstaltungen und Meinungsumfragen. In diesem Artikel erfahren Sie, wie Sie PHP zur Implementierung der WeChat-Abstimmungsfunktion verwenden. Holen Sie sich die Autorisierung des offiziellen WeChat-Kontos. Zuerst müssen Sie die Autorisierung des offiziellen WeChat-Kontos einholen. Auf der ?ffentlichen WeChat-Plattform müssen Sie die API-Adresse des ?ffentlichen WeChat-Kontos, des offiziellen Kontos und des dem ?ffentlichen Konto entsprechenden Tokens konfigurieren. Bei unserer Entwicklung mit der PHP-Sprache müssen wir den von WeChat offiziell bereitgestellten PH verwenden

Mit der Popularit?t von WeChat beginnen immer mehr Unternehmen, es als Marketinginstrument zu nutzen. Die WeChat-Gruppen-Messaging-Funktion ist für Unternehmen eines der wichtigen Mittel zur Durchführung von WeChat-Marketing. Wenn Sie sich jedoch nur auf den manuellen Versand verlassen, ist dies für Vermarkter eine ?u?erst zeitaufw?ndige und mühsame Aufgabe. Daher ist es besonders wichtig, ein WeChat-Massen-Messaging-Tool zu entwickeln. In diesem Artikel wird erl?utert, wie Sie mit PHP WeChat-Massen-Messaging-Tools entwickeln. 1. Vorbereitungsarbeiten Um WeChat-Massen-Messaging-Tools zu entwickeln, müssen wir die folgenden technischen Punkte beherrschen: Grundkenntnisse der PHP-Entwicklung der ?ffentlichen WeChat-Plattform Entwicklungstools: Sub

WeChat ist derzeit eine der sozialen Plattformen mit der gr??ten Nutzerbasis weltweit. Mit der Popularit?t des mobilen Internets beginnen immer mehr Unternehmen die Bedeutung des WeChat-Marketings zu erkennen. Bei der Durchführung von WeChat-Marketing ist der Kundenservice ein entscheidender Bestandteil. Um das Kundenservice-Chatfenster besser verwalten zu k?nnen, k?nnen wir die PHP-Sprache für die WeChat-Entwicklung verwenden. 1. Einführung in die PHP-WeChat-Entwicklung PHP ist eine serverseitige Open-Source-Skriptsprache, die im Bereich der Webentwicklung weit verbreitet ist. In Kombination mit der Entwicklungsschnittstelle der ?ffentlichen WeChat-Plattform k?nnen wir die PHP-Sprache zur Durchführung von WeChat verwenden

Bei der Entwicklung ?ffentlicher WeChat-Konten ist die Benutzer-Tag-Verwaltung eine sehr wichtige Funktion, die es Entwicklern erm?glicht, ihre Benutzer besser zu verstehen und zu verwalten. In diesem Artikel wird erl?utert, wie Sie mit PHP die WeChat-Benutzer-Tag-Verwaltungsfunktion implementieren. 1. Erhalten Sie die OpenID des WeChat-Benutzers. Bevor wir die WeChat-Benutzer-Tag-Verwaltungsfunktion verwenden, müssen wir zun?chst die OpenID des Benutzers abrufen. Bei der Entwicklung ?ffentlicher WeChat-Konten ist es üblich, die OpenID durch Benutzerautorisierung zu erhalten. Nachdem die Benutzerautorisierung abgeschlossen ist, k?nnen wir den Benutzer über den folgenden Code abrufen

Da WeChat zu einem immer wichtigeren Kommunikationsmittel im Leben der Menschen wird, wird seine agile Messaging-Funktion schnell von einer gro?en Anzahl von Unternehmen und Einzelpersonen bevorzugt. Für Unternehmen ist die Entwicklung von WeChat zu einer Marketingplattform zu einem Trend geworden, und die Bedeutung der WeChat-Entwicklung ist nach und nach immer wichtiger geworden. Unter diesen wird die Gruppensendefunktion noch h?ufiger verwendet. Wie implementiert man als PHP-Programmierer Datens?tze zum Senden von Gruppennachrichten? Im Folgenden erhalten Sie eine kurze Einführung. 1. Verstehen Sie die Entwicklungskenntnisse im Zusammenhang mit ?ffentlichen WeChat-Konten, bevor Sie verstehen, wie Datens?tze zum Senden von Gruppennachrichten implementiert werden

So verwenden Sie PHP zur Entwicklung ?ffentlicher WeChat-Konten. ?ffentliche WeChat-Konten sind für viele Unternehmen zu einem wichtigen Kanal für Werbung und Interaktion geworden. PHP als h?ufig verwendete Websprache kann auch zur Entwicklung ?ffentlicher WeChat-Konten verwendet werden. In diesem Artikel werden die spezifischen Schritte zur Verwendung von PHP zum Entwickeln ?ffentlicher WeChat-Konten vorgestellt. Schritt 1: Erhalten Sie das Entwicklerkonto des offiziellen WeChat-Kontos. Bevor Sie mit der Entwicklung des offiziellen WeChat-Kontos beginnen, müssen Sie ein Entwicklerkonto des offiziellen WeChat-Kontos beantragen. Informationen zum spezifischen Registrierungsprozess finden Sie auf der offiziellen Website der ?ffentlichen WeChat-Plattform

Mit der Entwicklung des Internets und mobiler Smart-Ger?te ist WeChat zu einem unverzichtbaren Bestandteil im sozialen Bereich und im Marketing geworden. In diesem zunehmend digitalen Zeitalter ist die Verwendung von PHP für die WeChat-Entwicklung zum Fokus vieler Entwickler geworden. In diesem Artikel werden haupts?chlich die relevanten Wissenspunkte zur Verwendung von PHP für die WeChat-Entwicklung sowie einige Tipps und Vorsichtsma?nahmen vorgestellt. 1. Vorbereitung der Entwicklungsumgebung Bevor Sie WeChat entwickeln, müssen Sie zun?chst die entsprechende Entwicklungsumgebung vorbereiten. Insbesondere müssen Sie die PHP-Betriebsumgebung und die ?ffentliche WeChat-Plattform installieren
