


Utilisation de Delphi intraweb pour le traitement des messages WeChat
Feb 24, 2017 pm 04:22 PMDans la deuxième le?on, en utilisant Delphi intraweb pour le développement WeChat 2?:?intraweb est publié en mode .net (déployé en mode asp.net mvc4). Sur IIS (h?te virtuel .net), nous avons déployé avec succès l'application iw sur le serveur. h?te virtuel cloud. Dans cette conférence, nous continuerons le contenu de la première conférence et reviendrons au développement de WeChat, en expliquant cette fois le traitement des messages WeChat.
Tout d'abord, clarifiez quelques points de connaissances?:
1. La méthode de publication http utilisée par le serveur WeChat pour transférer les messages des utilisateurs. Dans la première le?on, nous n'avons pas mentionné la méthode de publication http. Méthode de soumission des données http du serveur WeChat. Sans entrer dans les détails, WeChat utilise en fait la méthode http get pour la vérification de l'accès ; lors du transfert des messages utilisateur, il utilise la méthode http post, et lors du transfert des messages, les messages sont codés au format XML, ContentType. =texte/xml.
2. Le transfert des messages du serveur WeChat peut choisir trois méthodes de transmission de données?: 1. Texte brut?; 2. Cryptage?; 3. Mixte. Dans cet article, pour faciliter le débogage, nous utilisons du texte clair pour transférer les données. La prochaine conférence expliquera le traitement des méthodes de cryptage des messages.
Au départ, j'avais l'impression que le contenu de cette conférence n'était pas difficile à mettre en ?uvre avec .net, php ou même Delphi webbroker. Mais après avoir utilisé iw, j'ai trouvé que le problème était très compliqué !
iw La classe qui gère les données de requête http est THttpRequest, mais j'ai parcouru les propriétés et les méthodes de THttpRequest et je n'ai pas trouvé d'endroit pour accéder directement au contenu http. Il n'y a qu'une propriété THttpRequest.ContentFields qui semble. pour lire le contenu http. , mais après avoir réellement exécuté le code et débogué, il a été constaté que cet attribut ne pouvait pas du tout transmettre le fichier XML par le serveur WeChat et que le contenu était toujours vide.
Après une vérification répétée, il a été constaté que cet attribut ContentFields n'est valide que pour la valeur de clé transmise lorsque le ContentType est application/x-www-form-urlencoded dans la requête http, c'est-à-dire qu'il peut être obtenu pour la soumission du type de formulaire.Pour les données, c'est le cas dans l'accès WeChat dans la première le?on. La signature, l'horodatage, le nom occasionnel et les autres valeurs de champ transmis par WeChat peuvent être extraits via THttpRequest.ContentFields.
Les choses sont devenues un dilemme complet maintenant. Alors, comment utiliser la méthode de classe THttpRequest pour obtenir le contenu lorsque ContentType=text/xml?? Après des recherches, j'ai découvert que la classe THttpRequest avait un attribut Files. à cette époque, je sentais que l'espoir était dans cet attribut. Après tout, le XML peut également être téléchargé sous forme de fichier, n'est-ce pas ? Haha, malheureusement, peu importe comment j'ai expérimenté à l'époque (je l'ai utilisé pour démonter la DCU), le nombre de fichiers avec cet attribut était toujours 0, et cet espoir était perdu !
J'ai donc posté un message sur le forum de questions officiel d'iw et j'ai commencé à demander des conseils. Pendant 1 et 2 jours, il y avait toujours des gens qui lisaient mais personne n'a répondu. Après avoir cherché plusieurs fois des questions connexes, j'ai trouvé ?a. quelqu'un m'avait déjà rencontré. Quand j'ai eu la même question, l'auteur a répondu que le questionneur n'était pas clair et a demandé d'envoyer le code à l'auteur par e-mail, j'ai immédiatement fait semblant d'être le questionneur et j'ai envoyé mon code à l'auteur. code et j'ai joint la question. Ouais, Perdu dans l'océan, haha, iw, ce n'est vraiment pas facile de t'aimer autant.
Il n'y a aucun moyen de continuer à chercher les questions des autres. Le travail acharné porte ses fruits. J'ai finalement trouvé un message dans lequel la question posée par la personne qui a posé la question était différente de la mienne, mais la personne qui a répondu a mentionné qu'il y avait une question. Exemple PostFormData dans le projet iw demos. J'ai immédiatement vérifié la démo que j'ai téléchargée et j'ai découvert qu'il n'existait aucun projet de ce type. Je suis allé sur le site officiel pour télécharger à nouveau l'exemple de projet, haha, enfin il est là ! Ouvrez le code et jetez un ?il, il s'avère que c'est le cas ! Tout comme lors du premier cours, une ligne de code m'a dérangé pendant plusieurs jours.
Chers amis, jetez un ?il?:
est la méthode "RegisterContentType", haha, y pensez-vous ? Est-ce mentionné dans l'aide ? Putain de merde !
D'accord, ?a marche enfin. Continuons. Après avoir ajouté l'enregistrement du type de contenu, vous pouvez utiliser THttpRequest.Files pour obtenir le XML publié. C'est presque la même chose que ma prédiction initiale. .
Chers amis, je vous raconte mon voyage de sang et de larmes. Pour les frameworks de développement Web comme iw, qui ont une aide incomplète et aucun code source, la recherche dans la zone de questions et les démos iw sont nos plus grandes. dépendance. Nous devons utiliser iw, téléchargez simplement la dernière démo et jetez-y un ?il.
Il n'y a plus rien à dire. Je posterai une capture d'écran du code pour que tout le monde puisse la consulter. C'est plus simple de suivre la documentation de WeChat?:
Si vous voyez ceci, d'accord, laissez-moi vous confier un petit secret?:
Après des tests répétés de ma part, la méthode "RegisterContentType" n'est disponible qu'en modes SA et ISAPI. est valide. Lorsque je le compile dans une bibliothèque selon le deuxième tutoriel et que je le déploie selon le mode aspx, je ne peux de toute fa?on pas obtenir le fichier XML. Seul le type de projet a changé en raison des exigences de déploiement, et aucun autre code. a changé. Je ne sais tout simplement pas pourquoi. La capture d'écran que vous voyez ci-dessus a été déployée sur mon serveur à l'aide d'ISAPI.
Enfin, attachez la fonction d'encodage et de décodage du champ de date au format XML du message WeChat. Le type de date de WeChat est une valeur entière, la valeur entière doit donc être convertie en. un type TDateTime. La valeur entière de WeChat est calculée comme la deuxième différence en utilisant ? 1970-01-01 00:00:00 ? comme heure de base. Une autre chose à noter est que l'heure de WeChat est l'heure UTC, ce qui signifie que 8 heures doivent être ajoutées lors de la conversion à l'heure de Pékin.
///
/// La date et l'heure de WeChat sont toutes de type int64, ce qui est la deuxième différence entre 1970-01-01 00:00:00. Cette fonction est utilisée pour renvoyer 1970-01-01 00:00:00. Heure??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????>///
function
GetWxBaseDt: TDateTime
; begin ?? > := VarToDateTime(
'1970-01-01 00:00:00' ; ??>
///
??>?///
fonction?GetWxNow?:?Int64; ? ? ? ?
début ? ? ? ?
? Résultat?:=?Secondesentre (Maintenant,?GetWxBaseDt)?-?3600?* ?8; ? ? ? ?
fin; ? ? ? ?
fonction?GetWxNowStr:?cha?ne; ? ? ? ?
var ? ? ? ?
? i64:?Int64; ? ? ? ?
begin ? ? ? ?
? i64?:=?GetWxNow; ? ? ? ?
? Résultat?:=?IntToStr(i64); ? ? ? ?
fin; ? ? ? ?
///
/// La valeur du champ CreateTime obtenue à partir de WeChat XML est utilisée comme paramètre pour transmettre la fonction
/// Convertir l'heure en type TDatetime
///
// /
fonction ConvertWxDtToDateTime(wxDt: string ): TDateTime;
var i64
: Int64; :=
StrToInt64(
wxDt); Résultat := IncSecond(
GetWxBaseDt, i64 3600*8); ;Pour plus d'articles liés à l'utilisation de Delphi intraweb pour le traitement des messages WeChat, veuillez faire attention au site Web PHP chinois?!

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)

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.

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

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 tache 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

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

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

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

Comment utiliser PHP pour développer des comptes publics WeChat Les comptes publics WeChat sont devenus un canal important de promotion et d'interaction pour de nombreuses entreprises, et PHP, en tant que langage Web couramment utilisé, peut également être utilisé pour développer des comptes publics WeChat. Cet article présentera les étapes spécifiques pour utiliser PHP pour développer des comptes publics WeChat. étape 1 : Obtenez le compte développeur du compte officiel WeChat. Avant de commencer le développement du compte officiel WeChat, vous devez demander un compte développeur du compte officiel WeChat. Pour le processus d'inscription spécifique, veuillez vous référer au site officiel de la plateforme publique WeChat

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
