Maison  >  Article  >  Applet WeChat  >  Description de l'accord de développement WeChat

Description de l'accord de développement WeChat

PHPz
PHPzoriginal
2017-04-02 15:23:551717parcourir

1. Le message publié correspond à un identifiant (tant qu'il est unique dans un seul sens, le serveur peut juger des réceptions répétées en fonction de l'identifiant). Le mécanisme de retransmission du message assure un nombre limité de tentatives. échoue, l'utilisateur sera invité et l'envoi est réussi. Une confirmation sera renvoyée et le client saura que l'envoi a réussi seulement après avoir reçu le message de confirmation. L'envoi d'un message peut ne pas générer de nouvelle SyncClé.

2. Sur la base du mécanisme de synchronisation des messages d'état du numéro de version (SynKey), les exigences de transmission incrémentielle et ordonnée sont naturellement satisfaites. Notification de connexion longue/acquisition de connexion courte, confirmation, etc., la méthode d'interaction est simple, garantissant que les messages arrivent de manière fiable et précise.

3. Le client/serveur stockera les enregistrements de traitement des ID de message pour éviter une consommation répétée. Le client obtient le dernier message, mais il n'est pas confirmé. Le serveur ne considérera pas le message comme étant consommé. Le client l'obtiendra à nouveau la prochaine fois et vérifiera si le message en cours a été traité. Devinez en vous basant sur certains phénomènes.

4. D'une manière générale, le protocole WeChat est multiplateforme (TCP ou HTTP peut être présenté, et la méthode de traitement peut être unifiée). Il est synchronisé par « poignée de main » et est très fiable. plate-forme qu'elle est, elle peut être bien prise en charge

5. Le coût minimum du protocole WeChat est de 16 octets La plupart du temps, plusieurs paquets de messages sont combinés et transmis par lots. Le protocole WeChat n’est ni le plus simple ni le plus économe en trafic, mais il est très performant.

6. Si le serveur détecte des facteurs incertains, cela peut provoquer une micro-activation du protocole SSL Secure Socket Layer pour la transmission régulière de connexions longues TCP. La connexion courte n'a pas changé

7. Méthode d'envoi des messages

Envoyer un message via le canal de connexion longue TCP établi, envoyer le message au serveur, puis accepter le message de confirmation, etc. ., pour générer une interaction.

Lorsque des amis reçoivent des informations et les lisent, ils reçoivent également des notifications côté serveur, entraînant une interaction, etc.

Il peut être confirmé que WeChat utilise le mode de connexion longue TCP pour envoyer des messages. Puisqu'il n'affecte pas ses propres données d'état, SyncKey ne doit pas être échangé.

Sous un réseau à faible vitesse, vous pouvez voir un message d'envoi de message, qui appartient au mécanisme de renvoi de message

Si le réseau n'est pas bon, le client affichera parfois un point d'exclamation rouge indiquant que l'envoi a échoué

Si un message a été envoyé au serveur mais n'a pas été confirmé, le client affichera un point d'exclamation rouge et le renverra à nouveau. Le serveur le traitera comme un message en double et le. confirmation des commentaires

Téléchargez l'image et elle sera divisée en plusieurs parties en fonction de la taille de l'image (environ 1,5K sont divisés en parties. En même temps, le client lancera plusieurs POST). demandes. Une fois chaque téléchargement réussi, le serveur la fusionnera probablement en une image complète et renverra une image miniature, affichée dans la fenêtre de discussion de l'APP. Comme un message texte ordinaire, l'APP est envoyée au serveur

pour télécharger audio, puis le canal TCP est utilisé séparément, un enregistrement audio de deux secondes, le client termine l'enregistrement , et il est divisé en deux parties pour la transmission, une La taille maximale est d'environ 1,5 Ko et le serveur répond par une notification de données pour confirmer la réception. Un total de trois transferts de données.

Les informations audio et en texte brut sont cohérentes. Elles sont toutes deux envoyées via de longues connexions TCP, envoyées par le client et confirmées par le serveur.

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