{"version":"1.1","schema_version":"1.1.0","plugin_version":"1.1.2","url":"https://tutos-gameserver.fr/2019/06/14/socket-io-api-de-serveur-socket-io-monter-un-serveur-minecraft/","llm_html_url":"https://tutos-gameserver.fr/2019/06/14/socket-io-api-de-serveur-socket-io-monter-un-serveur-minecraft/llm","llm_json_url":"https://tutos-gameserver.fr/2019/06/14/socket-io-api-de-serveur-socket-io-monter-un-serveur-minecraft/llm.json","manifest_url":"https://tutos-gameserver.fr/llm-endpoints-manifest.json","language":"fr-FR","locale":"fr_FR","title":"Socket.IO &#8211; API de serveur | Socket.IO\n\n &#8211; Monter un serveur MineCraft","site":{"name":"Tutos GameServer","url":"https://tutos-gameserver.fr/"},"author":{"id":1,"name":"Titanfall","url":"https://tutos-gameserver.fr/author/titanfall/"},"published_at":"2019-06-14T00:55:52+00:00","modified_at":"2019-06-14T00:55:52+00:00","word_count":3804,"reading_time_seconds":1142,"summary":"Exposé par require (&#39;socket.io&#39;). nouveau serveur (httpServer[, options]) httpServer (http.Server) le serveur à lier. options (Objet) Fonctionne avec et sans Nouveau: const io = exiger(&#39;socket.io&#39;) ();const Serveur = exiger(&#39;socket.io&#39;)const io = Nouveau Serveur(); Options disponibles: Option Valeur par défaut La description chemin /socket.io nom du chemin à capturer servirClient vrai si servir les fichiers du [&hellip;]","summary_points":["Exposé par require (&#39;socket.io&#39;).","nouveau serveur (httpServer[, options])\n\nhttpServer (http.Server) le serveur à lier.","options (Objet)\n\nFonctionne avec et sans Nouveau:\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) ();const Serveur = exiger(&#39;socket.io&#39;)const io = Nouveau Serveur();\n\n\n\n\nOptions disponibles:\n\n\n\nOption\nValeur par défaut\nLa description\n\n\n\n\nchemin\n/socket.io\nnom du chemin à capturer\n\n\nservirClient\nvrai\nsi servir les fichiers du client\n\n\nadaptateur\n&#8211;\nl&#39;adaptateur à utiliser.","Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire."],"topics":["Serveur minecraft"],"entities":[],"entities_metadata":[{"id":13,"name":"Serveur minecraft","slug":"serveur-minecraft","taxonomy":"category","count":2786,"url":"https://tutos-gameserver.fr/category/serveur-minecraft/"}],"tags":["Serveur minecraft"],"content_hash":"87c4d673f1c8a8352f3c66628ad54623","plain_text":"Exposé par require (&#39;socket.io&#39;).\nnouveau serveur (httpServer[, options])\n\nhttpServer (http.Server) le serveur à lier.\noptions (Objet)\n\nFonctionne avec et sans Nouveau:\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) ();const Serveur = exiger(&#39;socket.io&#39;)const io = Nouveau Serveur();\n\n\n\n\nOptions disponibles:\n\n\n\nOption\nValeur par défaut\nLa description\n\n\n\n\nchemin\n/socket.io\nnom du chemin à capturer\n\n\nservirClient\nvrai\nsi servir les fichiers du client\n\n\nadaptateur\n&#8211;\nl&#39;adaptateur à utiliser. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur\n\n\norigines\n*\nles origines autorisées\n\n\nanalyseur\n&#8211;\nl&#39;analyseur à utiliser. Par défaut, une instance de Analyseur qui est livré avec socket.io. Voir socket.io-analyseur.\n\n\n\nOptions disponibles pour le serveur Engine.IO sous-jacent:\n\n\n\nOption\nValeur par défaut\nLa description\n\n\n\n\npingTimeout\n5000\ncombien de ms sans paquet pong considérer la connexion fermée\n\n\npingInterval\n25000\ncombien de ms avant d&#39;envoyer un nouveau paquet ping\n\n\nupgradeTimeout\n10000\ncombien de ms avant l&#39;annulation d&#39;une mise à niveau de transport incomplète\n\n\nmaxHttpBufferSize\n10e7\nnombre d&#39;octets ou de caractères qu&#39;un message peut contenir avant la fermeture de la session (pour éviter les dénis de service).\n\n\nallowRequest\n\nUne fonction qui reçoit une demande de négociation ou de mise à niveau donnée en tant que premier paramètre et peut décider de continuer ou non. Le deuxième argument est une fonction qui doit être appelée avec les informations décidées: fn (err, succès), où Succès est une valeur booléenne où false signifie que la demande est rejetée et err est un code d&#39;erreur.\n\n\nles transports\n['polling', 'websocket']\ntransports pour permettre les connexions à\n\n\nallowUpgrades\nvrai\nautoriser les mises à niveau de transport\n\n\nparMessageDeflate\nvrai\nparamètres de l&#39;extension WebSocket permessage-deflate (voir ws module aps docs). Mis à faux pour désactiver.\n\n\nhttpCompression\nvrai\nparamètres de la compression http pour les transports d&#39;interrogation (voir zlib api docs). Mis à faux pour désactiver.\n\n\nbiscuit\nio\nnom du cookie HTTP qui contient le client à envoyer dans le cadre des en-têtes de réponse de négociation. Mis à faux ne pas en envoyer.\n\n\ncookiePath\n/\nchemin de la ci-dessus biscuit option. Si false, aucun chemin ne sera envoyé, ce qui signifie que les navigateurs n&#39;enverront que le cookie sur le chemin attaché engine.io (/engine.io). Définissez false pour ne pas enregistrer le cookie io sur toutes les demandes.\n\n\ncookieHttpOnly\nvrai\nsi vrai Les cookies HttpOnly io ne sont pas accessibles par les API côté client, telles que JavaScript. Cette option n&#39;a aucun effet si biscuit ou cookiePath est réglé sur faux.\n\n\nwsEngine\nws\nquelle implémentation de serveur WebSocket utiliser. Le module spécifié doit être conforme à la ws interface (voir ws module api docs). La valeur par défaut est ws. Un autre addon c ++ est également disponible en installant uws module.\n\n\n\nParmi ces options:\n\n\nle pingTimeout et pingInterval les paramètres auront un impact sur le délai avant qu&#39;un client sache que le serveur n&#39;est plus disponible. Par exemple, si la connexion TCP sous-jacente n’est pas correctement fermée en raison d’un problème de réseau, un client doit attendre jusqu’à pingTimeout + pingInterval ms avant d&#39;obtenir un déconnecter un événement.\n\n\nL&#39;ordre du les transports le tableau est important. Par défaut, une connexion d&#39;interrogation longue est d&#39;abord établie, puis mise à niveau vers WebSocket si possible. En utilisant ['websocket']    signifie qu&#39;il n&#39;y aura pas de solution de rechange si une connexion WebSocket ne peut pas être ouverte.\n\n\n\n\n\n\nconst serveur = exiger(&#39;http&#39;) .createServer ();const io = exiger(&#39;socket.io&#39;) (serveur,         chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)\n\n\n\n\nnouveau serveur (port[, options])\n\nPort (Nombre) un port à écouter (un nouveau http.Server sera créé)\noptions (Objet)\n\nVoir ci-dessus pour la liste des disponibles options.\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) (3000        chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);\n\n\n\n\nnouveau serveur (options)\nVoir ci-dessus pour la liste des disponibles options.\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) (        chemin: &#39;/tester&#39;,        serveClient: faux,);const serveur = exiger(&#39;http&#39;) .createServer ();io.attach (serveur,         pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)io.attach (3000        pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);\n\n\n\n\nserveur.sockets\nUn alias pour la valeur par défaut (/) espace de noms.\n\n\n\n\nio.sockets.emit (&#39;salut&#39;, &#39;toutes les personnes&#39;)io.of (&#39;/&#39;).émettre(&#39;salut&#39;, &#39;toutes les personnes&#39;)\n\n\n\n\nserver.serveClient ([value])\n\nvaleur (Booléen)\nRésultats Serveur | Booléen\n\nSi valeur est vrai le serveur connecté (voir Serveur # attaché) servira les fichiers du client. Par défaut à vrai. Cette méthode n&#39;a aucun effet après attacher est appelé. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) (http,  servirClient: faux );const io = exiger(&#39;socket.io&#39;) ();io.serveClient (faux)io.attach (http);\n\n\n\n\nserver.path ([value])\n\nvaleur (Chaîne)\nRésultats Serveur | Chaîne\n\nDéfinit le chemin valeur sous lequel moteur.io et les fichiers statiques seront servis. Par défaut à /socket.io. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) ();io.path (&#39;/ myownpath&#39;)const socket = io (        chemin: &#39;/ myownpath&#39;);\n\n\n\n\nserver.adapter ([value])\n\nvaleur (Adaptateur)\nRésultats Serveur | Adaptateur\n\nDéfinit l&#39;adaptateur valeur. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) (3000)const redis = exiger(&#39;socket.io-redis&#39;)io.adapter (redis ( hôte: &#39;localhost&#39;, Port: 6379 ));\n\n\n\n\nserver.origins ([value])\n\nvaleur (String | String[])\nRésultats Serveur | Chaîne\n\nDéfinit les origines autorisées valeur. Par défaut, toutes les origines sont autorisées. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.\n\n\n\n\nio.origines ([[[[&quot;https://foo.example.com:443&quot;])\n\n\n\n\nserver.origins (fn)\n\nfn (Une fonction)\nRésultats Serveur\n\nFournit une fonction prenant deux arguments origine: String et rappel (erreur, succès), où Succès est une valeur booléenne indiquant si l&#39;origine est autorisée ou non. Si Succès est réglé sur faux, Erreur doit être fourni sous forme de valeur de chaîne qui sera ajoutée à la réponse du serveur, par ex. “Origine non autorisée”.\nInconvénients potentiels:\n\ndans certaines situations, lorsqu&#39;il est impossible de déterminer origine il peut avoir valeur de *\nComme cette fonction sera exécutée pour chaque requête, il est conseillé de la faire fonctionner le plus rapidement possible.\nSi socket.io est utilisé avec Express, les en-têtes CORS ne seront affectés que pour socket.io demandes. Pour Express, vous pouvez utiliser cors.\n\n\n\n\n\nio.origines ((origine, rappel) =&gt;   si (origine! == &#39;https://foo.example.com&#39;)     revenir rappeler(&#39;origine non autorisée&#39;, faux)                rappeler(nul, vrai));\n\n\n\n\nserver.attach (httpServer[, options])\n\nhttpServer (http.Server) le serveur auquel s&#39;attacher\noptions (Objet)\n\nAttache le Serveur à une instance de engine.io sur httpServer avec le fourni options (éventuellement).\nserver.attach (port[, options])\n\nPort (Nombre) le port pour écouter\noptions (Objet)\n\nAttache le Serveur à une instance de engine.io sur un nouveau http.Server avec le options (éventuellement).\nserver.listen (httpServer[, options])\nSynonyme de server.attach (httpServer[, options]).\nserver.listen (port[, options])\nSynonyme de server.attach (port[, options]).\nserver.bind (moteur)\n\nmoteur (engine.Server)\nRésultats Serveur\n\nUtilisation avancée uniquement. Lie le serveur à un moteur spécifique.io Serveur (ou API compatible) instance.\nserver.onconnection (socket)\n\nprise (engine.Socket)\nRésultats Serveur\n\nUtilisation avancée uniquement. Crée un nouveau socket.io client depuis le engine.io entrant (ou une API compatible) Prise.\nserveur.of (nsp)\n\nnsp (String | RegExp | Fonction)\nRésultats Espace de noms\n\nInitialise et récupère le donné Espace de noms par son identifiant de chemin nsp. Si l&#39;espace de nom a déjà été initialisé, il le renvoie immédiatement.\n\n\n\n\nconst adminNamespace = io.of (&#39;/ admin&#39;)\n\n\n\n\nUne expression régulière ou une fonction peut également être fournie, afin de créer un espace de nom de manière dynamique:\n\n\n\n\nconst dynamicNsp = io.of (/ ^  / dynamic-  d + $ /).sur(&#39;relier&#39;, (socket) =&gt;   const newNamespace = socket.nsp;           newNamespace.emit (&#39;Bonjour&#39;));const socket = io (&#39;/ dynamic-101&#39;)dynamicNsp.emit (&#39;Bonjour&#39;)dynamicNsp.use ((prise, prochaine) =&gt; );\n\n\n\n\nAvec une fonction:\n\n\n\n\nio.of ((nom, requête, suivant) =&gt;         suivant(nul, checkToken (query.token));).sur(&#39;relier&#39;, (socket) =&gt; );\n\n\n\n\nserver.close ([callback])\nFerme le serveur socket.io. le rappeler l&#39;argument est facultatif et sera appelé lorsque toutes les connexions seront fermées.\n\n\n\n\nconst Serveur = exiger(&#39;socket.io&#39;)const PORT = 3030;const serveur = exiger(&#39;http&#39;).Serveur();const io = serveur (PORT);io.close (); server.listen (PORT); io = serveur (serveur);\n\n\n\n\nserver.engine.generateId\nEcrase la méthode par défaut pour générer votre identifiant de socket personnalisé.\nLa fonction est appelée avec un objet de requête de noeud (http.IncomingMessage) comme premier paramètre.\n\n\n\n\nio.engine.generateId = (req) =&gt;   revenir &quot;custom: id:&quot; + custom_id ++; \n\n\n\n\nReprésente un pool de sockets connectés sous une étendue donnée identifiée par un chemin (par exemple: /bavarder).\nUn client se connecte toujours à / (l’espace de noms principal), puis connectez-vous potentiellement à d’autres espaces de noms (tout en utilisant la même connexion sous-jacente).\nPour savoir comment et pourquoi, consultez: Pièces et espaces de noms.\nnamespace.name\nLa propriété d&#39;identifiant d&#39;espace de nom.\nnamespace.connected\nLe hash de Prise objets connectés à cet espace de noms, indexés par identifiant.\nnamespace.adapter\nle Adaptateur utilisé pour l&#39;espace de noms. Utile lorsque vous utilisez le Adaptateur basé sur Redis, car il expose des méthodes pour gérer les sockets et les salles de votre cluster.\nRemarque: l&#39;adaptateur de l&#39;espace de noms principal est accessible avec io.of (&#39;/&#39;). adaptateur.\nnamespace.to (room)\n\npièce (Chaîne)\nRésultats Espace de noms pour chaîner\n\nDéfinit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce.\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) ();const adminNamespace = io.of (&#39;/ admin&#39;)adminNamespace.to (&#39;niveau 1&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );\n\n\n\n\nnamespace.in (room)\nSynonyme de namespace.to (salle).\nnamespace.emit (eventName[, …args])\nÉmet un événement à tous les clients connectés. Les deux suivants sont équivalents:\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) ();io.emit (&#39;un événement envoyé à tous les clients connectés&#39;) const chat = io.of (&#39;/bavarder&#39;)chat.emit (&#39;un événement envoyé à tous les clients connectés dans l&#39;espace de noms de discussion&#39;)\n\n\n\n\nRemarque: les accusés de réception ne sont pas pris en charge lors de l&#39;émission à partir d&#39;un espace de noms.\nnamespace.clients (rappel)\nObtient une liste d&#39;ID de clients connectés à cet espace de noms (sur tous les nœuds, le cas échéant).\n\n\n\n\nconst io = exiger(&#39;socket.io&#39;) ();io.of (&#39;/bavarder&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );\n\n\n\n\nUn exemple pour obtenir tous les clients dans la chambre de l’espace de noms:\n\n\n\n\nio.of (&#39;/bavarder&#39;).dans(&#39;général&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );\n\n\n\n\nComme pour la diffusion, tous les clients de l’espace de nom par défaut sont tous les clients:\n\n\n\n\nio.clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );\n\n\n\n\nnamespace.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Prise, et reçoit comme paramètres le socket et une fonction permettant de différer éventuellement l’exécution au prochain middleware enregistré.\nLes erreurs transmises aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.\n\n\n\n\nio.use ((prise, prochaine) =&gt;   si (socket.request.headers.cookie) revenir suivant();        suivant(Nouveau Erreur(&#39;Erreur d&#39;authentification&#39;)););\n\n\n\n\nEvénement: &#39;connect&#39;\n\nprise (Prise) connexion socket avec le client\n\nTiré sur une connexion du client.\n\n\n\n\nio.on (&#39;relier&#39;, (socket) =&gt;   );io.of (&#39;/ admin&#39;).sur(&#39;relier&#39;, (socket) =&gt;   );\n\n\n\n\nEvénement: ‘connexion’\nSynonyme d’événement: «connect».\nDrapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si les clients ne sont pas prêts à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou du fait qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils se trouvent au milieu d&#39;une requête. cycle de réponse).\n\n\n\n\nio.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); \n\n\n\n\nDrapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.\n\n\n\n\nio.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );\n\n\n\n\nDrapeau: «local»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser au nœud actuel (lorsque l’adaptateur Redis est utilisé).\n\n\n\n\nio.local.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );\n\n\n\n\nUNE Prise est la classe fondamentale pour interagir avec les clients du navigateur. UNE Prise appartient à un certain Espace de noms (par défaut /) et utilise un sous-jacent Client communiquer.\nIl convient de noter le Prise ne se rapporte pas directement au TCP / IP sous-jacent réel prise et ce n&#39;est que le nom de la classe.\nDans chaque Espace de noms, vous pouvez également définir des canaux arbitraires (appelés pièce) que le Prise peut rejoindre et partir. Cela fournit un moyen pratique de diffuser à un groupe de Prises (voir Socket # to au dessous de).\nle Prise La classe hérite de EventEmitter. le Prise la classe annule la émettre méthode, et ne modifie aucune autre EventEmitter méthode. Toutes les méthodes documentées ici qui apparaissent également comme EventEmitter méthodes (en dehors de émettre) sont mis en œuvre par EventEmitteret documentation pour EventEmitter s&#39;applique.\nsocket.id\nUn identifiant unique pour la session, qui provient du sous-jacent Client.\nsocket.rooms\nUn hachage de chaînes identifiant les salles dans lesquelles se trouve ce client, indexé par nom de salle.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);         ););\n\n\n\n\nsocket.client\nUne référence au sous-jacent Client objet.\nsocket.conn\nUne référence au sous-jacent Client connexion de transport (engine.io Prise objet). Cela permet d&#39;accéder à la couche de transport d&#39;E / S, qui reste (principalement) abstraite du socket TCP / IP réel.\nsocket.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine du moteur.io sous-jacent Client. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.\nprise de main\nLes détails de la poignée de main:\n\n\n\n\n        en-têtes:        temps: ,        adresse: ,        xdomain:,        sécurisé:        Publié: ,        URL:,        question: \n\n\n\n\nUsage:\n\n\n\n\nio.use ((prise, prochaine) =&gt;   laisser poignée de main = socket.handshake;  );io.on (&#39;lien&#39;, (socket) =&gt;   laisser poignée de main = socket.handshake;  );\n\n\n\n\nsocket.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Paquet et reçoit en paramètre le paquet et une fonction permettant de différer éventuellement l&#39;exécution au middleware enregistré suivant.\nLes erreurs passées aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.use ((paquet, ensuite) =&gt;     si (packet.doge === vrai) revenir suivant();                suivant(Nouveau Erreur(&#39;Pas une erreur de chien&#39;));        ););\n\n\n\n\nsocket.send ([…args][, ack])\n\nargs\nack (Une fonction)\nRésultats Prise\n\nEnvoie un message un événement. Voir socket.emit (eventName[, …args][, ack]).\nsocket.emit (eventName[, …args][, ack])\n(annule EventEmitter.emit)\n\nNom de l&#39;événement (Chaîne)\nargs\nack (Une fonction)\nRésultats Prise\n\nEmet un événement sur le socket identifié par le nom de la chaîne. Tout autre paramètre peut être inclus. Toutes les infrastructures de données sérialisables sont prises en charge, y compris Tampon.\n\n\n\n\nsocket.emit (&#39;Bonjour&#39;, &#39;monde&#39;)socket.emit (&#39;avec-binaire&#39;, 1, &#39;2&#39; 3: &#39;4&#39;, 5: Nouveau Tampon(6));\n\n\n\n\nle ack L’argument est facultatif et sera appelé avec la réponse du client.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );        socket.emit (&#39;furet&#39;, &#39;tobi&#39;, (data) =&gt;     console.log (données);         );        );\n\n\n\n\nsocket.on (eventName, rappel)\n(hérité de EventEmitter)\n\nNom de l&#39;événement (Chaîne)\nrappeler (Une fonction)\nRésultats Prise\n\nEnregistrez un nouveau gestionnaire pour l&#39;événement donné.\n\n\n\n\nsocket.on (&#39;nouvelles&#39;, (data) =&gt;   console.log (données););socket.on (&#39;nouvelles&#39;, (arg1, arg2, arg3) =&gt;   );socket.on (&#39;nouvelles&#39;, (data, callback) =&gt;         rappeler(0));\n\n\n\n\nsocket.once (eventName, listener)\nsocket.removeListener (eventName, listener)\nsocket.removeAllListeners ([eventName])\nsocket.eventNames ()\nHérité de EventEmitter (avec d&#39;autres méthodes non mentionnées ici). Voir la documentation de Node.js pour la événements module.\nsocket.join (room[, callback])\n\npièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner\n\nAjoute le client au pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);                 io.to (&#39;chambre 237&#39;).émettre(&quot;un nouvel utilisateur a rejoint la salle&quot;)         ););\n\n\n\n\nLes mécanismes de jonction des salles sont gérés par le Adaptateur qui a été configuré (voir Adaptateur # serveur ci-dessus), par défaut sur socket.io-adaptateur.\nPour votre commodité, chaque socket rejoint automatiquement une pièce identifiée par son identifiant (voir Socket # id). Cela facilite la diffusion de messages vers d&#39;autres sockets:\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;dire à quelqu&#39;un&#39;, (id, msg) =&gt;                     socket.to (id) .emit (&#39;mon message&#39;, msg);        ););\n\n\n\n\nsocket.join (chambres[, callback])\n\npièces (Tableau)\nrappeler (Une fonction)\nRésultats Prise pour chaîner\n\nAjoute le client à la liste des salles et déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nsocket.leave (room[, callback])\n\npièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner\n\nSupprime le client de pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nLes chambres sont laissées automatiquement lors de la déconnexion.\nsocket.to (salle)\n\npièce (Chaîne)\nRésultats Prise pour chaîner\n\nDéfinit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce (la prise elle-même étant exclue).\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;           socket.to (&#39;autres&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );          socket.to (&#39;room1&#39;).à(&#39;room2&#39;).émettre(&#39;Bonjour&#39;)          socket.to (). emit (&#39;Hey&#39;)    );\n\n\n\n\nRemarque: les accusés de réception ne sont pas pris en charge lors de la diffusion.\nsocket.in (salle)\nSynonyme de socket.to (salle).\nsocket.compress (valeur)\n\nvaleur (Booléen) si le paquet suivant sera compressé\nRésultats Prise pour chaîner\n\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement comprimé si la valeur est vrai. Par défaut à vrai lorsque vous n&#39;appelez pas la méthode.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.compress (faux).émettre(&#39;non compressé&#39;, &quot;c&#39;est rugueux&quot;));\n\n\n\n\nsocket.disconnect (close)\n\nFermer (Booléen) s&#39;il faut fermer la connexion sous-jacente\nRésultats Prise\n\nDéconnecte ce client. Si la valeur de fermeture est vrai, ferme la connexion sous-jacente. Sinon, il ne fait que déconnecter l&#39;espace de noms.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         setTimeout (() =&gt; socket.disconnect (vrai), 5000));\n\n\n\n\nDrapeau: ‘broadcast’\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser à tous les sockets, mais l&#39;expéditeur.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.broadcast.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );\n\n\n\n\nDrapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si le client n&#39;est pas prêt à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou parce qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils sont au milieu d&#39;une demande. cycle de réponse).\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );\n\n\n\n\nDrapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.\n\n\n\n\nvar io = exiger(&#39;socket.io&#39;) ();io.on (&#39;lien&#39;, une fonction(prise)        socket.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; ); );\n\n\n\n\nEvénement: &quot;déconnecter&quot;\n\nraison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)\n\nTiré lors de la déconnexion.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;             ););\n\n\n\n\nRaisons possibles:\n\n\n\nRaison\nCôté\nLa description\n\n\n\n\nerreur de transport\nDu côté serveur\nErreur de transport\n\n\nDéconnexion de l&#39;espace de noms du serveur\nDu côté serveur\nLe serveur effectue un socket.disconnect ()\n\n\ndéconnexion de l&#39;espace de noms du client\nCôté client\nVous avez déconnecté le paquet du client\n\n\nping timeout\nCôté client\nLe client a cessé de répondre aux pings dans le délai imparti (selon le pingTimeout réglage de configuration)\n\n\ntransport à proximité\nCôté client\nLe client a cessé d&#39;envoyer des données\n\n\n\nEvénement: ‘erreur’\n\nErreur (Objet) objet d&#39;erreur\n\nDéclenché lorsqu&#39;une erreur survient.\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;Erreur&#39;, (erreur) =&gt;             ););\n\n\n\n\nEvénement: &quot;déconnexion&quot;\n\nraison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)\n\nSe déclenche lorsque le client va être déconnecté (mais n’a pas quitté son pièces encore).\n\n\n\n\nio.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;     laisser chambres = Objet.keys (socket.rooms);            ););\n\n\n\n\nCe sont des événements réservés (avec relier, nouveauListener et removeListener) qui ne peuvent pas être utilisés comme noms d’événements.\nle Client La classe représente une connexion de transport entrant (engine.io). UNE Client peut être associé à de nombreux multiplexés Prises qui appartiennent à différents Espace de nomss.\nclient.conn\nUne référence au sous-jacent moteur.io Prise lien.\nclient.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine de la connexion engine.io. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.\n\n    Pris une erreur? Éditez cette page sur GitHub\n  \n\nClick to rate this post!\r\n                                   \r\n                               [Total: 0  Average: 0]","paragraphs":["Exposé par require (&#39;socket.io&#39;).\nnouveau serveur (httpServer[, options])","httpServer (http.Server) le serveur à lier.\noptions (Objet)","Fonctionne avec et sans Nouveau:","const io = exiger(&#39;socket.io&#39;) ();const Serveur = exiger(&#39;socket.io&#39;)const io = Nouveau Serveur();","Options disponibles:","Option\nValeur par défaut\nLa description","chemin\n/socket.io\nnom du chemin à capturer","servirClient\nvrai\nsi servir les fichiers du client","adaptateur\n&#8211;\nl&#39;adaptateur à utiliser. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur","origines\n*\nles origines autorisées","analyseur\n&#8211;\nl&#39;analyseur à utiliser. Par défaut, une instance de Analyseur qui est livré avec socket.io. Voir socket.io-analyseur.","Options disponibles pour le serveur Engine.IO sous-jacent:","Option\nValeur par défaut\nLa description","pingTimeout\n5000\ncombien de ms sans paquet pong considérer la connexion fermée","pingInterval\n25000\ncombien de ms avant d&#39;envoyer un nouveau paquet ping","upgradeTimeout\n10000\ncombien de ms avant l&#39;annulation d&#39;une mise à niveau de transport incomplète","maxHttpBufferSize\n10e7\nnombre d&#39;octets ou de caractères qu&#39;un message peut contenir avant la fermeture de la session (pour éviter les dénis de service).","allowRequest","Une fonction qui reçoit une demande de négociation ou de mise à niveau donnée en tant que premier paramètre et peut décider de continuer ou non. Le deuxième argument est une fonction qui doit être appelée avec les informations décidées: fn (err, succès), où Succès est une valeur booléenne où false signifie que la demande est rejetée et err est un code d&#39;erreur.","les transports\n['polling', 'websocket']\ntransports pour permettre les connexions à","allowUpgrades\nvrai\nautoriser les mises à niveau de transport","parMessageDeflate\nvrai\nparamètres de l&#39;extension WebSocket permessage-deflate (voir ws module aps docs). Mis à faux pour désactiver.","httpCompression\nvrai\nparamètres de la compression http pour les transports d&#39;interrogation (voir zlib api docs). Mis à faux pour désactiver.","biscuit\nio\nnom du cookie HTTP qui contient le client à envoyer dans le cadre des en-têtes de réponse de négociation. Mis à faux ne pas en envoyer.","cookiePath\n/\nchemin de la ci-dessus biscuit option. Si false, aucun chemin ne sera envoyé, ce qui signifie que les navigateurs n&#39;enverront que le cookie sur le chemin attaché engine.io (/engine.io). Définissez false pour ne pas enregistrer le cookie io sur toutes les demandes.","cookieHttpOnly\nvrai\nsi vrai Les cookies HttpOnly io ne sont pas accessibles par les API côté client, telles que JavaScript. Cette option n&#39;a aucun effet si biscuit ou cookiePath est réglé sur faux.","wsEngine\nws\nquelle implémentation de serveur WebSocket utiliser. Le module spécifié doit être conforme à la ws interface (voir ws module api docs). La valeur par défaut est ws. Un autre addon c ++ est également disponible en installant uws module.","Parmi ces options:","le pingTimeout et pingInterval les paramètres auront un impact sur le délai avant qu&#39;un client sache que le serveur n&#39;est plus disponible. Par exemple, si la connexion TCP sous-jacente n’est pas correctement fermée en raison d’un problème de réseau, un client doit attendre jusqu’à pingTimeout + pingInterval ms avant d&#39;obtenir un déconnecter un événement.","L&#39;ordre du les transports le tableau est important. Par défaut, une connexion d&#39;interrogation longue est d&#39;abord établie, puis mise à niveau vers WebSocket si possible. En utilisant ['websocket']    signifie qu&#39;il n&#39;y aura pas de solution de rechange si une connexion WebSocket ne peut pas être ouverte.","const serveur = exiger(&#39;http&#39;) .createServer ();const io = exiger(&#39;socket.io&#39;) (serveur,         chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)","nouveau serveur (port[, options])","Port (Nombre) un port à écouter (un nouveau http.Server sera créé)\noptions (Objet)","Voir ci-dessus pour la liste des disponibles options.","const io = exiger(&#39;socket.io&#39;) (3000        chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);","nouveau serveur (options)\nVoir ci-dessus pour la liste des disponibles options.","const io = exiger(&#39;socket.io&#39;) (        chemin: &#39;/tester&#39;,        serveClient: faux,);const serveur = exiger(&#39;http&#39;) .createServer ();io.attach (serveur,         pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)io.attach (3000        pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);","serveur.sockets\nUn alias pour la valeur par défaut (/) espace de noms.","io.sockets.emit (&#39;salut&#39;, &#39;toutes les personnes&#39;)io.of (&#39;/&#39;).émettre(&#39;salut&#39;, &#39;toutes les personnes&#39;)","server.serveClient ([value])","valeur (Booléen)\nRésultats Serveur | Booléen","Si valeur est vrai le serveur connecté (voir Serveur # attaché) servira les fichiers du client. Par défaut à vrai. Cette méthode n&#39;a aucun effet après attacher est appelé. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","const io = exiger(&#39;socket.io&#39;) (http,  servirClient: faux );const io = exiger(&#39;socket.io&#39;) ();io.serveClient (faux)io.attach (http);","server.path ([value])","valeur (Chaîne)\nRésultats Serveur | Chaîne","Définit le chemin valeur sous lequel moteur.io et les fichiers statiques seront servis. Par défaut à /socket.io. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","const io = exiger(&#39;socket.io&#39;) ();io.path (&#39;/ myownpath&#39;)const socket = io (        chemin: &#39;/ myownpath&#39;);","server.adapter ([value])","valeur (Adaptateur)\nRésultats Serveur | Adaptateur","Définit l&#39;adaptateur valeur. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","const io = exiger(&#39;socket.io&#39;) (3000)const redis = exiger(&#39;socket.io-redis&#39;)io.adapter (redis ( hôte: &#39;localhost&#39;, Port: 6379 ));","server.origins ([value])","valeur (String | String[])\nRésultats Serveur | Chaîne","Définit les origines autorisées valeur. Par défaut, toutes les origines sont autorisées. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","io.origines ([[[[&quot;https://foo.example.com:443&quot;])","server.origins (fn)","fn (Une fonction)\nRésultats Serveur","Fournit une fonction prenant deux arguments origine: String et rappel (erreur, succès), où Succès est une valeur booléenne indiquant si l&#39;origine est autorisée ou non. Si Succès est réglé sur faux, Erreur doit être fourni sous forme de valeur de chaîne qui sera ajoutée à la réponse du serveur, par ex. “Origine non autorisée”.\nInconvénients potentiels:","dans certaines situations, lorsqu&#39;il est impossible de déterminer origine il peut avoir valeur de *\nComme cette fonction sera exécutée pour chaque requête, il est conseillé de la faire fonctionner le plus rapidement possible.\nSi socket.io est utilisé avec Express, les en-têtes CORS ne seront affectés que pour socket.io demandes. Pour Express, vous pouvez utiliser cors.","io.origines ((origine, rappel) =&gt;   si (origine! == &#39;https://foo.example.com&#39;)     revenir rappeler(&#39;origine non autorisée&#39;, faux)                rappeler(nul, vrai));","server.attach (httpServer[, options])","httpServer (http.Server) le serveur auquel s&#39;attacher\noptions (Objet)","Attache le Serveur à une instance de engine.io sur httpServer avec le fourni options (éventuellement).\nserver.attach (port[, options])","Port (Nombre) le port pour écouter\noptions (Objet)","Attache le Serveur à une instance de engine.io sur un nouveau http.Server avec le options (éventuellement).\nserver.listen (httpServer[, options])\nSynonyme de server.attach (httpServer[, options]).\nserver.listen (port[, options])\nSynonyme de server.attach (port[, options]).\nserver.bind (moteur)","moteur (engine.Server)\nRésultats Serveur","Utilisation avancée uniquement. Lie le serveur à un moteur spécifique.io Serveur (ou API compatible) instance.\nserver.onconnection (socket)","prise (engine.Socket)\nRésultats Serveur","Utilisation avancée uniquement. Crée un nouveau socket.io client depuis le engine.io entrant (ou une API compatible) Prise.\nserveur.of (nsp)","nsp (String | RegExp | Fonction)\nRésultats Espace de noms","Initialise et récupère le donné Espace de noms par son identifiant de chemin nsp. Si l&#39;espace de nom a déjà été initialisé, il le renvoie immédiatement.","const adminNamespace = io.of (&#39;/ admin&#39;)","Une expression régulière ou une fonction peut également être fournie, afin de créer un espace de nom de manière dynamique:","const dynamicNsp = io.of (/ ^  / dynamic-  d + $ /).sur(&#39;relier&#39;, (socket) =&gt;   const newNamespace = socket.nsp;           newNamespace.emit (&#39;Bonjour&#39;));const socket = io (&#39;/ dynamic-101&#39;)dynamicNsp.emit (&#39;Bonjour&#39;)dynamicNsp.use ((prise, prochaine) =&gt; );","Avec une fonction:","io.of ((nom, requête, suivant) =&gt;         suivant(nul, checkToken (query.token));).sur(&#39;relier&#39;, (socket) =&gt; );","server.close ([callback])\nFerme le serveur socket.io. le rappeler l&#39;argument est facultatif et sera appelé lorsque toutes les connexions seront fermées.","const Serveur = exiger(&#39;socket.io&#39;)const PORT = 3030;const serveur = exiger(&#39;http&#39;).Serveur();const io = serveur (PORT);io.close (); server.listen (PORT); io = serveur (serveur);","server.engine.generateId\nEcrase la méthode par défaut pour générer votre identifiant de socket personnalisé.\nLa fonction est appelée avec un objet de requête de noeud (http.IncomingMessage) comme premier paramètre.","io.engine.generateId = (req) =&gt;   revenir &quot;custom: id:&quot; + custom_id ++;","Représente un pool de sockets connectés sous une étendue donnée identifiée par un chemin (par exemple: /bavarder).\nUn client se connecte toujours à / (l’espace de noms principal), puis connectez-vous potentiellement à d’autres espaces de noms (tout en utilisant la même connexion sous-jacente).\nPour savoir comment et pourquoi, consultez: Pièces et espaces de noms.\nnamespace.name\nLa propriété d&#39;identifiant d&#39;espace de nom.\nnamespace.connected\nLe hash de Prise objets connectés à cet espace de noms, indexés par identifiant.\nnamespace.adapter\nle Adaptateur utilisé pour l&#39;espace de noms. Utile lorsque vous utilisez le Adaptateur basé sur Redis, car il expose des méthodes pour gérer les sockets et les salles de votre cluster.\nRemarque: l&#39;adaptateur de l&#39;espace de noms principal est accessible avec io.of (&#39;/&#39;). adaptateur.\nnamespace.to (room)","pièce (Chaîne)\nRésultats Espace de noms pour chaîner","Définit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce.\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.","const io = exiger(&#39;socket.io&#39;) ();const adminNamespace = io.of (&#39;/ admin&#39;)adminNamespace.to (&#39;niveau 1&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );","namespace.in (room)\nSynonyme de namespace.to (salle).\nnamespace.emit (eventName[, …args])\nÉmet un événement à tous les clients connectés. Les deux suivants sont équivalents:","const io = exiger(&#39;socket.io&#39;) ();io.emit (&#39;un événement envoyé à tous les clients connectés&#39;) const chat = io.of (&#39;/bavarder&#39;)chat.emit (&#39;un événement envoyé à tous les clients connectés dans l&#39;espace de noms de discussion&#39;)","Remarque: les accusés de réception ne sont pas pris en charge lors de l&#39;émission à partir d&#39;un espace de noms.\nnamespace.clients (rappel)\nObtient une liste d&#39;ID de clients connectés à cet espace de noms (sur tous les nœuds, le cas échéant).","const io = exiger(&#39;socket.io&#39;) ();io.of (&#39;/bavarder&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );","Un exemple pour obtenir tous les clients dans la chambre de l’espace de noms:","io.of (&#39;/bavarder&#39;).dans(&#39;général&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );","Comme pour la diffusion, tous les clients de l’espace de nom par défaut sont tous les clients:","io.clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );","namespace.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Prise, et reçoit comme paramètres le socket et une fonction permettant de différer éventuellement l’exécution au prochain middleware enregistré.\nLes erreurs transmises aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.","io.use ((prise, prochaine) =&gt;   si (socket.request.headers.cookie) revenir suivant();        suivant(Nouveau Erreur(&#39;Erreur d&#39;authentification&#39;)););","Evénement: &#39;connect&#39;","prise (Prise) connexion socket avec le client","Tiré sur une connexion du client.","io.on (&#39;relier&#39;, (socket) =&gt;   );io.of (&#39;/ admin&#39;).sur(&#39;relier&#39;, (socket) =&gt;   );","Evénement: ‘connexion’\nSynonyme d’événement: «connect».\nDrapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si les clients ne sont pas prêts à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou du fait qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils se trouvent au milieu d&#39;une requête. cycle de réponse).","io.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );","Drapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.","io.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );","Drapeau: «local»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser au nœud actuel (lorsque l’adaptateur Redis est utilisé).","io.local.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );","UNE Prise est la classe fondamentale pour interagir avec les clients du navigateur. UNE Prise appartient à un certain Espace de noms (par défaut /) et utilise un sous-jacent Client communiquer.\nIl convient de noter le Prise ne se rapporte pas directement au TCP / IP sous-jacent réel prise et ce n&#39;est que le nom de la classe.\nDans chaque Espace de noms, vous pouvez également définir des canaux arbitraires (appelés pièce) que le Prise peut rejoindre et partir. Cela fournit un moyen pratique de diffuser à un groupe de Prises (voir Socket # to au dessous de).\nle Prise La classe hérite de EventEmitter. le Prise la classe annule la émettre méthode, et ne modifie aucune autre EventEmitter méthode. Toutes les méthodes documentées ici qui apparaissent également comme EventEmitter méthodes (en dehors de émettre) sont mis en œuvre par EventEmitteret documentation pour EventEmitter s&#39;applique.\nsocket.id\nUn identifiant unique pour la session, qui provient du sous-jacent Client.\nsocket.rooms\nUn hachage de chaînes identifiant les salles dans lesquelles se trouve ce client, indexé par nom de salle.","io.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);         ););","socket.client\nUne référence au sous-jacent Client objet.\nsocket.conn\nUne référence au sous-jacent Client connexion de transport (engine.io Prise objet). Cela permet d&#39;accéder à la couche de transport d&#39;E / S, qui reste (principalement) abstraite du socket TCP / IP réel.\nsocket.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine du moteur.io sous-jacent Client. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.\nprise de main\nLes détails de la poignée de main:","en-têtes:        temps: ,        adresse: ,        xdomain:,        sécurisé:        Publié: ,        URL:,        question:","Usage:","io.use ((prise, prochaine) =&gt;   laisser poignée de main = socket.handshake;  );io.on (&#39;lien&#39;, (socket) =&gt;   laisser poignée de main = socket.handshake;  );","socket.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Paquet et reçoit en paramètre le paquet et une fonction permettant de différer éventuellement l&#39;exécution au middleware enregistré suivant.\nLes erreurs passées aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.","io.on (&#39;lien&#39;, (socket) =&gt;         socket.use ((paquet, ensuite) =&gt;     si (packet.doge === vrai) revenir suivant();                suivant(Nouveau Erreur(&#39;Pas une erreur de chien&#39;));        ););","socket.send ([…args][, ack])","args\nack (Une fonction)\nRésultats Prise","Envoie un message un événement. Voir socket.emit (eventName[, …args][, ack]).\nsocket.emit (eventName[, …args][, ack])\n(annule EventEmitter.emit)","Nom de l&#39;événement (Chaîne)\nargs\nack (Une fonction)\nRésultats Prise","Emet un événement sur le socket identifié par le nom de la chaîne. Tout autre paramètre peut être inclus. Toutes les infrastructures de données sérialisables sont prises en charge, y compris Tampon.","socket.emit (&#39;Bonjour&#39;, &#39;monde&#39;)socket.emit (&#39;avec-binaire&#39;, 1, &#39;2&#39; 3: &#39;4&#39;, 5: Nouveau Tampon(6));","le ack L’argument est facultatif et sera appelé avec la réponse du client.","io.on (&#39;lien&#39;, (socket) =&gt;         socket.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );        socket.emit (&#39;furet&#39;, &#39;tobi&#39;, (data) =&gt;     console.log (données);         );        );","socket.on (eventName, rappel)\n(hérité de EventEmitter)","Nom de l&#39;événement (Chaîne)\nrappeler (Une fonction)\nRésultats Prise","Enregistrez un nouveau gestionnaire pour l&#39;événement donné.","socket.on (&#39;nouvelles&#39;, (data) =&gt;   console.log (données););socket.on (&#39;nouvelles&#39;, (arg1, arg2, arg3) =&gt;   );socket.on (&#39;nouvelles&#39;, (data, callback) =&gt;         rappeler(0));","socket.once (eventName, listener)\nsocket.removeListener (eventName, listener)\nsocket.removeAllListeners ([eventName])\nsocket.eventNames ()\nHérité de EventEmitter (avec d&#39;autres méthodes non mentionnées ici). Voir la documentation de Node.js pour la événements module.\nsocket.join (room[, callback])","pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner","Ajoute le client au pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).","io.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);                 io.to (&#39;chambre 237&#39;).émettre(&quot;un nouvel utilisateur a rejoint la salle&quot;)         ););","Les mécanismes de jonction des salles sont gérés par le Adaptateur qui a été configuré (voir Adaptateur # serveur ci-dessus), par défaut sur socket.io-adaptateur.\nPour votre commodité, chaque socket rejoint automatiquement une pièce identifiée par son identifiant (voir Socket # id). Cela facilite la diffusion de messages vers d&#39;autres sockets:","io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;dire à quelqu&#39;un&#39;, (id, msg) =&gt;                     socket.to (id) .emit (&#39;mon message&#39;, msg);        ););","socket.join (chambres[, callback])","pièces (Tableau)\nrappeler (Une fonction)\nRésultats Prise pour chaîner","Ajoute le client à la liste des salles et déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nsocket.leave (room[, callback])","pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner","Supprime le client de pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nLes chambres sont laissées automatiquement lors de la déconnexion.\nsocket.to (salle)","pièce (Chaîne)\nRésultats Prise pour chaîner","Définit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce (la prise elle-même étant exclue).\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.","io.on (&#39;lien&#39;, (socket) =&gt;           socket.to (&#39;autres&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );          socket.to (&#39;room1&#39;).à(&#39;room2&#39;).émettre(&#39;Bonjour&#39;)          socket.to (). emit (&#39;Hey&#39;)    );","Remarque: les accusés de réception ne sont pas pris en charge lors de la diffusion.\nsocket.in (salle)\nSynonyme de socket.to (salle).\nsocket.compress (valeur)","valeur (Booléen) si le paquet suivant sera compressé\nRésultats Prise pour chaîner","Définit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement comprimé si la valeur est vrai. Par défaut à vrai lorsque vous n&#39;appelez pas la méthode.","io.on (&#39;lien&#39;, (socket) =&gt;         socket.compress (faux).émettre(&#39;non compressé&#39;, &quot;c&#39;est rugueux&quot;));","socket.disconnect (close)","Fermer (Booléen) s&#39;il faut fermer la connexion sous-jacente\nRésultats Prise","Déconnecte ce client. Si la valeur de fermeture est vrai, ferme la connexion sous-jacente. Sinon, il ne fait que déconnecter l&#39;espace de noms.","io.on (&#39;lien&#39;, (socket) =&gt;         setTimeout (() =&gt; socket.disconnect (vrai), 5000));","Drapeau: ‘broadcast’\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser à tous les sockets, mais l&#39;expéditeur.","io.on (&#39;lien&#39;, (socket) =&gt;         socket.broadcast.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );","Drapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si le client n&#39;est pas prêt à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou parce qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils sont au milieu d&#39;une demande. cycle de réponse).","io.on (&#39;lien&#39;, (socket) =&gt;         socket.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );","Drapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.","var io = exiger(&#39;socket.io&#39;) ();io.on (&#39;lien&#39;, une fonction(prise)        socket.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; ); );","Evénement: &quot;déconnecter&quot;","raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)","Tiré lors de la déconnexion.","io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;             ););","Raisons possibles:","Raison\nCôté\nLa description","erreur de transport\nDu côté serveur\nErreur de transport","Déconnexion de l&#39;espace de noms du serveur\nDu côté serveur\nLe serveur effectue un socket.disconnect ()","déconnexion de l&#39;espace de noms du client\nCôté client\nVous avez déconnecté le paquet du client","ping timeout\nCôté client\nLe client a cessé de répondre aux pings dans le délai imparti (selon le pingTimeout réglage de configuration)","transport à proximité\nCôté client\nLe client a cessé d&#39;envoyer des données","Evénement: ‘erreur’","Erreur (Objet) objet d&#39;erreur","Déclenché lorsqu&#39;une erreur survient.","io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;Erreur&#39;, (erreur) =&gt;             ););","Evénement: &quot;déconnexion&quot;","raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)","Se déclenche lorsque le client va être déconnecté (mais n’a pas quitté son pièces encore).","io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;     laisser chambres = Objet.keys (socket.rooms);            ););","Ce sont des événements réservés (avec relier, nouveauListener et removeListener) qui ne peuvent pas être utilisés comme noms d’événements.\nle Client La classe représente une connexion de transport entrant (engine.io). UNE Client peut être associé à de nombreux multiplexés Prises qui appartiennent à différents Espace de nomss.\nclient.conn\nUne référence au sous-jacent moteur.io Prise lien.\nclient.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine de la connexion engine.io. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.","Pris une erreur? Éditez cette page sur GitHub","Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]"],"content_blocks":[{"id":"text-1","type":"text","heading":"","plain_text":"Exposé par require (&#39;socket.io&#39;).\nnouveau serveur (httpServer[, options])","html":"<p>Exposé par require (&#039;socket.io&#039;).\nnouveau serveur (httpServer[, options])</p>"},{"id":"text-2","type":"text","heading":"","plain_text":"httpServer (http.Server) le serveur à lier.\noptions (Objet)","html":"<p>httpServer (http.Server) le serveur à lier.\noptions (Objet)</p>"},{"id":"text-3","type":"text","heading":"","plain_text":"Fonctionne avec et sans Nouveau:","html":"<p>Fonctionne avec et sans Nouveau:</p>"},{"id":"text-4","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) ();const Serveur = exiger(&#39;socket.io&#39;)const io = Nouveau Serveur();","html":"<p>const io = exiger(&#039;socket.io&#039;) ();const Serveur = exiger(&#039;socket.io&#039;)const io = Nouveau Serveur();</p>"},{"id":"text-5","type":"text","heading":"","plain_text":"Options disponibles:","html":"<p>Options disponibles:</p>"},{"id":"text-6","type":"text","heading":"","plain_text":"Option\nValeur par défaut\nLa description","html":"<p>Option\nValeur par défaut\nLa description</p>"},{"id":"text-7","type":"text","heading":"","plain_text":"chemin\n/socket.io\nnom du chemin à capturer","html":"<p>chemin\n/socket.io\nnom du chemin à capturer</p>"},{"id":"text-8","type":"text","heading":"","plain_text":"servirClient\nvrai\nsi servir les fichiers du client","html":"<p>servirClient\nvrai\nsi servir les fichiers du client</p>"},{"id":"text-9","type":"text","heading":"","plain_text":"adaptateur\n&#8211;\nl&#39;adaptateur à utiliser. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur","html":"<p>adaptateur\n&#8211;\nl&#039;adaptateur à utiliser. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur</p>"},{"id":"text-10","type":"text","heading":"","plain_text":"origines\n*\nles origines autorisées","html":"<p>origines\n*\nles origines autorisées</p>"},{"id":"text-11","type":"text","heading":"","plain_text":"analyseur\n&#8211;\nl&#39;analyseur à utiliser. Par défaut, une instance de Analyseur qui est livré avec socket.io. Voir socket.io-analyseur.","html":"<p>analyseur\n&#8211;\nl&#039;analyseur à utiliser. Par défaut, une instance de Analyseur qui est livré avec socket.io. Voir socket.io-analyseur.</p>"},{"id":"text-12","type":"text","heading":"","plain_text":"Options disponibles pour le serveur Engine.IO sous-jacent:","html":"<p>Options disponibles pour le serveur Engine.IO sous-jacent:</p>"},{"id":"text-13","type":"text","heading":"","plain_text":"Option\nValeur par défaut\nLa description","html":"<p>Option\nValeur par défaut\nLa description</p>"},{"id":"text-14","type":"text","heading":"","plain_text":"pingTimeout\n5000\ncombien de ms sans paquet pong considérer la connexion fermée","html":"<p>pingTimeout\n5000\ncombien de ms sans paquet pong considérer la connexion fermée</p>"},{"id":"text-15","type":"text","heading":"","plain_text":"pingInterval\n25000\ncombien de ms avant d&#39;envoyer un nouveau paquet ping","html":"<p>pingInterval\n25000\ncombien de ms avant d&#039;envoyer un nouveau paquet ping</p>"},{"id":"text-16","type":"text","heading":"","plain_text":"upgradeTimeout\n10000\ncombien de ms avant l&#39;annulation d&#39;une mise à niveau de transport incomplète","html":"<p>upgradeTimeout\n10000\ncombien de ms avant l&#039;annulation d&#039;une mise à niveau de transport incomplète</p>"},{"id":"text-17","type":"text","heading":"","plain_text":"maxHttpBufferSize\n10e7\nnombre d&#39;octets ou de caractères qu&#39;un message peut contenir avant la fermeture de la session (pour éviter les dénis de service).","html":"<p>maxHttpBufferSize\n10e7\nnombre d&#039;octets ou de caractères qu&#039;un message peut contenir avant la fermeture de la session (pour éviter les dénis de service).</p>"},{"id":"text-18","type":"text","heading":"","plain_text":"allowRequest","html":"<p>allowRequest</p>"},{"id":"text-19","type":"text","heading":"","plain_text":"Une fonction qui reçoit une demande de négociation ou de mise à niveau donnée en tant que premier paramètre et peut décider de continuer ou non. Le deuxième argument est une fonction qui doit être appelée avec les informations décidées: fn (err, succès), où Succès est une valeur booléenne où false signifie que la demande est rejetée et err est un code d&#39;erreur.","html":"<p>Une fonction qui reçoit une demande de négociation ou de mise à niveau donnée en tant que premier paramètre et peut décider de continuer ou non. Le deuxième argument est une fonction qui doit être appelée avec les informations décidées: fn (err, succès), où Succès est une valeur booléenne où false signifie que la demande est rejetée et err est un code d&#039;erreur.</p>"},{"id":"text-20","type":"text","heading":"","plain_text":"les transports\n['polling', 'websocket']\ntransports pour permettre les connexions à","html":"<p>les transports\n[&#039;polling&#039;, &#039;websocket&#039;]\ntransports pour permettre les connexions à</p>"},{"id":"text-21","type":"text","heading":"","plain_text":"allowUpgrades\nvrai\nautoriser les mises à niveau de transport","html":"<p>allowUpgrades\nvrai\nautoriser les mises à niveau de transport</p>"},{"id":"text-22","type":"text","heading":"","plain_text":"parMessageDeflate\nvrai\nparamètres de l&#39;extension WebSocket permessage-deflate (voir ws module aps docs). Mis à faux pour désactiver.","html":"<p>parMessageDeflate\nvrai\nparamètres de l&#039;extension WebSocket permessage-deflate (voir ws module aps docs). Mis à faux pour désactiver.</p>"},{"id":"text-23","type":"text","heading":"","plain_text":"httpCompression\nvrai\nparamètres de la compression http pour les transports d&#39;interrogation (voir zlib api docs). Mis à faux pour désactiver.","html":"<p>httpCompression\nvrai\nparamètres de la compression http pour les transports d&#039;interrogation (voir zlib api docs). Mis à faux pour désactiver.</p>"},{"id":"text-24","type":"text","heading":"","plain_text":"biscuit\nio\nnom du cookie HTTP qui contient le client à envoyer dans le cadre des en-têtes de réponse de négociation. Mis à faux ne pas en envoyer.","html":"<p>biscuit\nio\nnom du cookie HTTP qui contient le client à envoyer dans le cadre des en-têtes de réponse de négociation. Mis à faux ne pas en envoyer.</p>"},{"id":"text-25","type":"text","heading":"","plain_text":"cookiePath\n/\nchemin de la ci-dessus biscuit option. Si false, aucun chemin ne sera envoyé, ce qui signifie que les navigateurs n&#39;enverront que le cookie sur le chemin attaché engine.io (/engine.io). Définissez false pour ne pas enregistrer le cookie io sur toutes les demandes.","html":"<p>cookiePath\n/\nchemin de la ci-dessus biscuit option. Si false, aucun chemin ne sera envoyé, ce qui signifie que les navigateurs n&#039;enverront que le cookie sur le chemin attaché engine.io (/engine.io). Définissez false pour ne pas enregistrer le cookie io sur toutes les demandes.</p>"},{"id":"text-26","type":"text","heading":"","plain_text":"cookieHttpOnly\nvrai\nsi vrai Les cookies HttpOnly io ne sont pas accessibles par les API côté client, telles que JavaScript. Cette option n&#39;a aucun effet si biscuit ou cookiePath est réglé sur faux.","html":"<p>cookieHttpOnly\nvrai\nsi vrai Les cookies HttpOnly io ne sont pas accessibles par les API côté client, telles que JavaScript. Cette option n&#039;a aucun effet si biscuit ou cookiePath est réglé sur faux.</p>"},{"id":"text-27","type":"text","heading":"","plain_text":"wsEngine\nws\nquelle implémentation de serveur WebSocket utiliser. Le module spécifié doit être conforme à la ws interface (voir ws module api docs). La valeur par défaut est ws. Un autre addon c ++ est également disponible en installant uws module.","html":"<p>wsEngine\nws\nquelle implémentation de serveur WebSocket utiliser. Le module spécifié doit être conforme à la ws interface (voir ws module api docs). La valeur par défaut est ws. Un autre addon c ++ est également disponible en installant uws module.</p>"},{"id":"text-28","type":"text","heading":"","plain_text":"Parmi ces options:","html":"<p>Parmi ces options:</p>"},{"id":"text-29","type":"text","heading":"","plain_text":"le pingTimeout et pingInterval les paramètres auront un impact sur le délai avant qu&#39;un client sache que le serveur n&#39;est plus disponible. Par exemple, si la connexion TCP sous-jacente n’est pas correctement fermée en raison d’un problème de réseau, un client doit attendre jusqu’à pingTimeout + pingInterval ms avant d&#39;obtenir un déconnecter un événement.","html":"<p>le pingTimeout et pingInterval les paramètres auront un impact sur le délai avant qu&#039;un client sache que le serveur n&#039;est plus disponible. Par exemple, si la connexion TCP sous-jacente n’est pas correctement fermée en raison d’un problème de réseau, un client doit attendre jusqu’à pingTimeout + pingInterval ms avant d&#039;obtenir un déconnecter un événement.</p>"},{"id":"text-30","type":"text","heading":"","plain_text":"L&#39;ordre du les transports le tableau est important. Par défaut, une connexion d&#39;interrogation longue est d&#39;abord établie, puis mise à niveau vers WebSocket si possible. En utilisant ['websocket']    signifie qu&#39;il n&#39;y aura pas de solution de rechange si une connexion WebSocket ne peut pas être ouverte.","html":"<p>L&#039;ordre du les transports le tableau est important. Par défaut, une connexion d&#039;interrogation longue est d&#039;abord établie, puis mise à niveau vers WebSocket si possible. En utilisant [&#039;websocket&#039;]    signifie qu&#039;il n&#039;y aura pas de solution de rechange si une connexion WebSocket ne peut pas être ouverte.</p>"},{"id":"text-31","type":"text","heading":"","plain_text":"const serveur = exiger(&#39;http&#39;) .createServer ();const io = exiger(&#39;socket.io&#39;) (serveur,         chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)","html":"<p>const serveur = exiger(&#039;http&#039;) .createServer ();const io = exiger(&#039;socket.io&#039;) (serveur,         chemin: &#039;/tester&#039;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)</p>"},{"id":"text-32","type":"text","heading":"","plain_text":"nouveau serveur (port[, options])","html":"<p>nouveau serveur (port[, options])</p>"},{"id":"text-33","type":"text","heading":"","plain_text":"Port (Nombre) un port à écouter (un nouveau http.Server sera créé)\noptions (Objet)","html":"<p>Port (Nombre) un port à écouter (un nouveau http.Server sera créé)\noptions (Objet)</p>"},{"id":"text-34","type":"text","heading":"","plain_text":"Voir ci-dessus pour la liste des disponibles options.","html":"<p>Voir ci-dessus pour la liste des disponibles options.</p>"},{"id":"text-35","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) (3000        chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);","html":"<p>const io = exiger(&#039;socket.io&#039;) (3000        chemin: &#039;/tester&#039;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);</p>"},{"id":"text-36","type":"text","heading":"","plain_text":"nouveau serveur (options)\nVoir ci-dessus pour la liste des disponibles options.","html":"<p>nouveau serveur (options)\nVoir ci-dessus pour la liste des disponibles options.</p>"},{"id":"text-37","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) (        chemin: &#39;/tester&#39;,        serveClient: faux,);const serveur = exiger(&#39;http&#39;) .createServer ();io.attach (serveur,         pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)io.attach (3000        pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);","html":"<p>const io = exiger(&#039;socket.io&#039;) (        chemin: &#039;/tester&#039;,        serveClient: faux,);const serveur = exiger(&#039;http&#039;) .createServer ();io.attach (serveur,         pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)io.attach (3000        pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);</p>"},{"id":"text-38","type":"text","heading":"","plain_text":"serveur.sockets\nUn alias pour la valeur par défaut (/) espace de noms.","html":"<p>serveur.sockets\nUn alias pour la valeur par défaut (/) espace de noms.</p>"},{"id":"text-39","type":"text","heading":"","plain_text":"io.sockets.emit (&#39;salut&#39;, &#39;toutes les personnes&#39;)io.of (&#39;/&#39;).émettre(&#39;salut&#39;, &#39;toutes les personnes&#39;)","html":"<p>io.sockets.emit (&#039;salut&#039;, &#039;toutes les personnes&#039;)io.of (&#039;/&#039;).émettre(&#039;salut&#039;, &#039;toutes les personnes&#039;)</p>"},{"id":"text-40","type":"text","heading":"","plain_text":"server.serveClient ([value])","html":"<p>server.serveClient ([value])</p>"},{"id":"text-41","type":"text","heading":"","plain_text":"valeur (Booléen)\nRésultats Serveur | Booléen","html":"<p>valeur (Booléen)\nRésultats Serveur | Booléen</p>"},{"id":"text-42","type":"text","heading":"","plain_text":"Si valeur est vrai le serveur connecté (voir Serveur # attaché) servira les fichiers du client. Par défaut à vrai. Cette méthode n&#39;a aucun effet après attacher est appelé. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","html":"<p>Si valeur est vrai le serveur connecté (voir Serveur # attaché) servira les fichiers du client. Par défaut à vrai. Cette méthode n&#039;a aucun effet après attacher est appelé. Si aucun argument n&#039;est fourni, cette méthode retourne la valeur actuelle.</p>"},{"id":"text-43","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) (http,  servirClient: faux );const io = exiger(&#39;socket.io&#39;) ();io.serveClient (faux)io.attach (http);","html":"<p>const io = exiger(&#039;socket.io&#039;) (http,  servirClient: faux );const io = exiger(&#039;socket.io&#039;) ();io.serveClient (faux)io.attach (http);</p>"},{"id":"text-44","type":"text","heading":"","plain_text":"server.path ([value])","html":"<p>server.path ([value])</p>"},{"id":"text-45","type":"text","heading":"","plain_text":"valeur (Chaîne)\nRésultats Serveur | Chaîne","html":"<p>valeur (Chaîne)\nRésultats Serveur | Chaîne</p>"},{"id":"text-46","type":"text","heading":"","plain_text":"Définit le chemin valeur sous lequel moteur.io et les fichiers statiques seront servis. Par défaut à /socket.io. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","html":"<p>Définit le chemin valeur sous lequel moteur.io et les fichiers statiques seront servis. Par défaut à /socket.io. Si aucun argument n&#039;est fourni, cette méthode retourne la valeur actuelle.</p>"},{"id":"text-47","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) ();io.path (&#39;/ myownpath&#39;)const socket = io (        chemin: &#39;/ myownpath&#39;);","html":"<p>const io = exiger(&#039;socket.io&#039;) ();io.path (&#039;/ myownpath&#039;)const socket = io (        chemin: &#039;/ myownpath&#039;);</p>"},{"id":"text-48","type":"text","heading":"","plain_text":"server.adapter ([value])","html":"<p>server.adapter ([value])</p>"},{"id":"text-49","type":"text","heading":"","plain_text":"valeur (Adaptateur)\nRésultats Serveur | Adaptateur","html":"<p>valeur (Adaptateur)\nRésultats Serveur | Adaptateur</p>"},{"id":"text-50","type":"text","heading":"","plain_text":"Définit l&#39;adaptateur valeur. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","html":"<p>Définit l&#039;adaptateur valeur. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur. Si aucun argument n&#039;est fourni, cette méthode retourne la valeur actuelle.</p>"},{"id":"text-51","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) (3000)const redis = exiger(&#39;socket.io-redis&#39;)io.adapter (redis ( hôte: &#39;localhost&#39;, Port: 6379 ));","html":"<p>const io = exiger(&#039;socket.io&#039;) (3000)const redis = exiger(&#039;socket.io-redis&#039;)io.adapter (redis ( hôte: &#039;localhost&#039;, Port: 6379 ));</p>"},{"id":"text-52","type":"text","heading":"","plain_text":"server.origins ([value])","html":"<p>server.origins ([value])</p>"},{"id":"text-53","type":"text","heading":"","plain_text":"valeur (String | String[])\nRésultats Serveur | Chaîne","html":"<p>valeur (String | String[])\nRésultats Serveur | Chaîne</p>"},{"id":"text-54","type":"text","heading":"","plain_text":"Définit les origines autorisées valeur. Par défaut, toutes les origines sont autorisées. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle.","html":"<p>Définit les origines autorisées valeur. Par défaut, toutes les origines sont autorisées. Si aucun argument n&#039;est fourni, cette méthode retourne la valeur actuelle.</p>"},{"id":"text-55","type":"text","heading":"","plain_text":"io.origines ([[[[&quot;https://foo.example.com:443&quot;])","html":"<p>io.origines ([[[[&quot;https://foo.example.com:443&quot;])</p>"},{"id":"text-56","type":"text","heading":"","plain_text":"server.origins (fn)","html":"<p>server.origins (fn)</p>"},{"id":"text-57","type":"text","heading":"","plain_text":"fn (Une fonction)\nRésultats Serveur","html":"<p>fn (Une fonction)\nRésultats Serveur</p>"},{"id":"text-58","type":"text","heading":"","plain_text":"Fournit une fonction prenant deux arguments origine: String et rappel (erreur, succès), où Succès est une valeur booléenne indiquant si l&#39;origine est autorisée ou non. Si Succès est réglé sur faux, Erreur doit être fourni sous forme de valeur de chaîne qui sera ajoutée à la réponse du serveur, par ex. “Origine non autorisée”.\nInconvénients potentiels:","html":"<p>Fournit une fonction prenant deux arguments origine: String et rappel (erreur, succès), où Succès est une valeur booléenne indiquant si l&#039;origine est autorisée ou non. Si Succès est réglé sur faux, Erreur doit être fourni sous forme de valeur de chaîne qui sera ajoutée à la réponse du serveur, par ex. “Origine non autorisée”.\nInconvénients potentiels:</p>"},{"id":"text-59","type":"text","heading":"","plain_text":"dans certaines situations, lorsqu&#39;il est impossible de déterminer origine il peut avoir valeur de *\nComme cette fonction sera exécutée pour chaque requête, il est conseillé de la faire fonctionner le plus rapidement possible.\nSi socket.io est utilisé avec Express, les en-têtes CORS ne seront affectés que pour socket.io demandes. Pour Express, vous pouvez utiliser cors.","html":"<p>dans certaines situations, lorsqu&#039;il est impossible de déterminer origine il peut avoir valeur de *\nComme cette fonction sera exécutée pour chaque requête, il est conseillé de la faire fonctionner le plus rapidement possible.\nSi socket.io est utilisé avec Express, les en-têtes CORS ne seront affectés que pour socket.io demandes. Pour Express, vous pouvez utiliser cors.</p>"},{"id":"text-60","type":"text","heading":"","plain_text":"io.origines ((origine, rappel) =&gt;   si (origine! == &#39;https://foo.example.com&#39;)     revenir rappeler(&#39;origine non autorisée&#39;, faux)                rappeler(nul, vrai));","html":"<p>io.origines ((origine, rappel) =&gt;   si (origine! == &#039;https://foo.example.com&#039;)     revenir rappeler(&#039;origine non autorisée&#039;, faux)                rappeler(nul, vrai));</p>"},{"id":"text-61","type":"text","heading":"","plain_text":"server.attach (httpServer[, options])","html":"<p>server.attach (httpServer[, options])</p>"},{"id":"text-62","type":"text","heading":"","plain_text":"httpServer (http.Server) le serveur auquel s&#39;attacher\noptions (Objet)","html":"<p>httpServer (http.Server) le serveur auquel s&#039;attacher\noptions (Objet)</p>"},{"id":"text-63","type":"text","heading":"","plain_text":"Attache le Serveur à une instance de engine.io sur httpServer avec le fourni options (éventuellement).\nserver.attach (port[, options])","html":"<p>Attache le Serveur à une instance de engine.io sur httpServer avec le fourni options (éventuellement).\nserver.attach (port[, options])</p>"},{"id":"text-64","type":"text","heading":"","plain_text":"Port (Nombre) le port pour écouter\noptions (Objet)","html":"<p>Port (Nombre) le port pour écouter\noptions (Objet)</p>"},{"id":"text-65","type":"text","heading":"","plain_text":"Attache le Serveur à une instance de engine.io sur un nouveau http.Server avec le options (éventuellement).\nserver.listen (httpServer[, options])\nSynonyme de server.attach (httpServer[, options]).\nserver.listen (port[, options])\nSynonyme de server.attach (port[, options]).\nserver.bind (moteur)","html":"<p>Attache le Serveur à une instance de engine.io sur un nouveau http.Server avec le options (éventuellement).\nserver.listen (httpServer[, options])\nSynonyme de server.attach (httpServer[, options]).\nserver.listen (port[, options])\nSynonyme de server.attach (port[, options]).\nserver.bind (moteur)</p>"},{"id":"text-66","type":"text","heading":"","plain_text":"moteur (engine.Server)\nRésultats Serveur","html":"<p>moteur (engine.Server)\nRésultats Serveur</p>"},{"id":"text-67","type":"text","heading":"","plain_text":"Utilisation avancée uniquement. Lie le serveur à un moteur spécifique.io Serveur (ou API compatible) instance.\nserver.onconnection (socket)","html":"<p>Utilisation avancée uniquement. Lie le serveur à un moteur spécifique.io Serveur (ou API compatible) instance.\nserver.onconnection (socket)</p>"},{"id":"text-68","type":"text","heading":"","plain_text":"prise (engine.Socket)\nRésultats Serveur","html":"<p>prise (engine.Socket)\nRésultats Serveur</p>"},{"id":"text-69","type":"text","heading":"","plain_text":"Utilisation avancée uniquement. Crée un nouveau socket.io client depuis le engine.io entrant (ou une API compatible) Prise.\nserveur.of (nsp)","html":"<p>Utilisation avancée uniquement. Crée un nouveau socket.io client depuis le engine.io entrant (ou une API compatible) Prise.\nserveur.of (nsp)</p>"},{"id":"text-70","type":"text","heading":"","plain_text":"nsp (String | RegExp | Fonction)\nRésultats Espace de noms","html":"<p>nsp (String | RegExp | Fonction)\nRésultats Espace de noms</p>"},{"id":"text-71","type":"text","heading":"","plain_text":"Initialise et récupère le donné Espace de noms par son identifiant de chemin nsp. Si l&#39;espace de nom a déjà été initialisé, il le renvoie immédiatement.","html":"<p>Initialise et récupère le donné Espace de noms par son identifiant de chemin nsp. Si l&#039;espace de nom a déjà été initialisé, il le renvoie immédiatement.</p>"},{"id":"text-72","type":"text","heading":"","plain_text":"const adminNamespace = io.of (&#39;/ admin&#39;)","html":"<p>const adminNamespace = io.of (&#039;/ admin&#039;)</p>"},{"id":"text-73","type":"text","heading":"","plain_text":"Une expression régulière ou une fonction peut également être fournie, afin de créer un espace de nom de manière dynamique:","html":"<p>Une expression régulière ou une fonction peut également être fournie, afin de créer un espace de nom de manière dynamique:</p>"},{"id":"text-74","type":"text","heading":"","plain_text":"const dynamicNsp = io.of (/ ^  / dynamic-  d + $ /).sur(&#39;relier&#39;, (socket) =&gt;   const newNamespace = socket.nsp;           newNamespace.emit (&#39;Bonjour&#39;));const socket = io (&#39;/ dynamic-101&#39;)dynamicNsp.emit (&#39;Bonjour&#39;)dynamicNsp.use ((prise, prochaine) =&gt; );","html":"<p>const dynamicNsp = io.of (/ ^  / dynamic-  d + $ /).sur(&#039;relier&#039;, (socket) =&gt;   const newNamespace = socket.nsp;           newNamespace.emit (&#039;Bonjour&#039;));const socket = io (&#039;/ dynamic-101&#039;)dynamicNsp.emit (&#039;Bonjour&#039;)dynamicNsp.use ((prise, prochaine) =&gt; );</p>"},{"id":"text-75","type":"text","heading":"","plain_text":"Avec une fonction:","html":"<p>Avec une fonction:</p>"},{"id":"text-76","type":"text","heading":"","plain_text":"io.of ((nom, requête, suivant) =&gt;         suivant(nul, checkToken (query.token));).sur(&#39;relier&#39;, (socket) =&gt; );","html":"<p>io.of ((nom, requête, suivant) =&gt;         suivant(nul, checkToken (query.token));).sur(&#039;relier&#039;, (socket) =&gt; );</p>"},{"id":"text-77","type":"text","heading":"","plain_text":"server.close ([callback])\nFerme le serveur socket.io. le rappeler l&#39;argument est facultatif et sera appelé lorsque toutes les connexions seront fermées.","html":"<p>server.close ([callback])\nFerme le serveur socket.io. le rappeler l&#039;argument est facultatif et sera appelé lorsque toutes les connexions seront fermées.</p>"},{"id":"text-78","type":"text","heading":"","plain_text":"const Serveur = exiger(&#39;socket.io&#39;)const PORT = 3030;const serveur = exiger(&#39;http&#39;).Serveur();const io = serveur (PORT);io.close (); server.listen (PORT); io = serveur (serveur);","html":"<p>const Serveur = exiger(&#039;socket.io&#039;)const PORT = 3030;const serveur = exiger(&#039;http&#039;).Serveur();const io = serveur (PORT);io.close (); server.listen (PORT); io = serveur (serveur);</p>"},{"id":"text-79","type":"text","heading":"","plain_text":"server.engine.generateId\nEcrase la méthode par défaut pour générer votre identifiant de socket personnalisé.\nLa fonction est appelée avec un objet de requête de noeud (http.IncomingMessage) comme premier paramètre.","html":"<p>server.engine.generateId\nEcrase la méthode par défaut pour générer votre identifiant de socket personnalisé.\nLa fonction est appelée avec un objet de requête de noeud (http.IncomingMessage) comme premier paramètre.</p>"},{"id":"text-80","type":"text","heading":"","plain_text":"io.engine.generateId = (req) =&gt;   revenir &quot;custom: id:&quot; + custom_id ++;","html":"<p>io.engine.generateId = (req) =&gt;   revenir &quot;custom: id:&quot; + custom_id ++;</p>"},{"id":"text-81","type":"text","heading":"","plain_text":"Représente un pool de sockets connectés sous une étendue donnée identifiée par un chemin (par exemple: /bavarder).\nUn client se connecte toujours à / (l’espace de noms principal), puis connectez-vous potentiellement à d’autres espaces de noms (tout en utilisant la même connexion sous-jacente).\nPour savoir comment et pourquoi, consultez: Pièces et espaces de noms.\nnamespace.name\nLa propriété d&#39;identifiant d&#39;espace de nom.\nnamespace.connected\nLe hash de Prise objets connectés à cet espace de noms, indexés par identifiant.\nnamespace.adapter\nle Adaptateur utilisé pour l&#39;espace de noms. Utile lorsque vous utilisez le Adaptateur basé sur Redis, car il expose des méthodes pour gérer les sockets et les salles de votre cluster.\nRemarque: l&#39;adaptateur de l&#39;espace de noms principal est accessible avec io.of (&#39;/&#39;). adaptateur.\nnamespace.to (room)","html":"<p>Représente un pool de sockets connectés sous une étendue donnée identifiée par un chemin (par exemple: /bavarder).\nUn client se connecte toujours à / (l’espace de noms principal), puis connectez-vous potentiellement à d’autres espaces de noms (tout en utilisant la même connexion sous-jacente).\nPour savoir comment et pourquoi, consultez: Pièces et espaces de noms.\nnamespace.name\nLa propriété d&#039;identifiant d&#039;espace de nom.\nnamespace.connected\nLe hash de Prise objets connectés à cet espace de noms, indexés par identifiant.\nnamespace.adapter\nle Adaptateur utilisé pour l&#039;espace de noms. Utile lorsque vous utilisez le Adaptateur basé sur Redis, car il expose des méthodes pour gérer les sockets et les salles de votre cluster.\nRemarque: l&#039;adaptateur de l&#039;espace de noms principal est accessible avec io.of (&#039;/&#039;). adaptateur.\nnamespace.to (room)</p>"},{"id":"text-82","type":"text","heading":"","plain_text":"pièce (Chaîne)\nRésultats Espace de noms pour chaîner","html":"<p>pièce (Chaîne)\nRésultats Espace de noms pour chaîner</p>"},{"id":"text-83","type":"text","heading":"","plain_text":"Définit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce.\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.","html":"<p>Définit un modificateur pour une émission d&#039;événement ultérieure que l&#039;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce.\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.</p>"},{"id":"text-84","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) ();const adminNamespace = io.of (&#39;/ admin&#39;)adminNamespace.to (&#39;niveau 1&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );","html":"<p>const io = exiger(&#039;socket.io&#039;) ();const adminNamespace = io.of (&#039;/ admin&#039;)adminNamespace.to (&#039;niveau 1&#039;).émettre(&#039;un évènement&#039; certains: &#039;Les données&#039; );</p>"},{"id":"text-85","type":"text","heading":"","plain_text":"namespace.in (room)\nSynonyme de namespace.to (salle).\nnamespace.emit (eventName[, …args])\nÉmet un événement à tous les clients connectés. Les deux suivants sont équivalents:","html":"<p>namespace.in (room)\nSynonyme de namespace.to (salle).\nnamespace.emit (eventName[, …args])\nÉmet un événement à tous les clients connectés. Les deux suivants sont équivalents:</p>"},{"id":"text-86","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) ();io.emit (&#39;un événement envoyé à tous les clients connectés&#39;) const chat = io.of (&#39;/bavarder&#39;)chat.emit (&#39;un événement envoyé à tous les clients connectés dans l&#39;espace de noms de discussion&#39;)","html":"<p>const io = exiger(&#039;socket.io&#039;) ();io.emit (&#039;un événement envoyé à tous les clients connectés&#039;) const chat = io.of (&#039;/bavarder&#039;)chat.emit (&#039;un événement envoyé à tous les clients connectés dans l&#039;espace de noms de discussion&#039;)</p>"},{"id":"text-87","type":"text","heading":"","plain_text":"Remarque: les accusés de réception ne sont pas pris en charge lors de l&#39;émission à partir d&#39;un espace de noms.\nnamespace.clients (rappel)\nObtient une liste d&#39;ID de clients connectés à cet espace de noms (sur tous les nœuds, le cas échéant).","html":"<p>Remarque: les accusés de réception ne sont pas pris en charge lors de l&#039;émission à partir d&#039;un espace de noms.\nnamespace.clients (rappel)\nObtient une liste d&#039;ID de clients connectés à cet espace de noms (sur tous les nœuds, le cas échéant).</p>"},{"id":"text-88","type":"text","heading":"","plain_text":"const io = exiger(&#39;socket.io&#39;) ();io.of (&#39;/bavarder&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );","html":"<p>const io = exiger(&#039;socket.io&#039;) ();io.of (&#039;/bavarder&#039;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );</p>"},{"id":"text-89","type":"text","heading":"","plain_text":"Un exemple pour obtenir tous les clients dans la chambre de l’espace de noms:","html":"<p>Un exemple pour obtenir tous les clients dans la chambre de l’espace de noms:</p>"},{"id":"text-90","type":"text","heading":"","plain_text":"io.of (&#39;/bavarder&#39;).dans(&#39;général&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );","html":"<p>io.of (&#039;/bavarder&#039;).dans(&#039;général&#039;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );</p>"},{"id":"text-91","type":"text","heading":"","plain_text":"Comme pour la diffusion, tous les clients de l’espace de nom par défaut sont tous les clients:","html":"<p>Comme pour la diffusion, tous les clients de l’espace de nom par défaut sont tous les clients:</p>"},{"id":"text-92","type":"text","heading":"","plain_text":"io.clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );","html":"<p>io.clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );</p>"},{"id":"text-93","type":"text","heading":"","plain_text":"namespace.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Prise, et reçoit comme paramètres le socket et une fonction permettant de différer éventuellement l’exécution au prochain middleware enregistré.\nLes erreurs transmises aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.","html":"<p>namespace.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Prise, et reçoit comme paramètres le socket et une fonction permettant de différer éventuellement l’exécution au prochain middleware enregistré.\nLes erreurs transmises aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.</p>"},{"id":"text-94","type":"text","heading":"","plain_text":"io.use ((prise, prochaine) =&gt;   si (socket.request.headers.cookie) revenir suivant();        suivant(Nouveau Erreur(&#39;Erreur d&#39;authentification&#39;)););","html":"<p>io.use ((prise, prochaine) =&gt;   si (socket.request.headers.cookie) revenir suivant();        suivant(Nouveau Erreur(&#039;Erreur d&#039;authentification&#039;)););</p>"},{"id":"text-95","type":"text","heading":"","plain_text":"Evénement: &#39;connect&#39;","html":"<p>Evénement: &#039;connect&#039;</p>"},{"id":"text-96","type":"text","heading":"","plain_text":"prise (Prise) connexion socket avec le client","html":"<p>prise (Prise) connexion socket avec le client</p>"},{"id":"text-97","type":"text","heading":"","plain_text":"Tiré sur une connexion du client.","html":"<p>Tiré sur une connexion du client.</p>"},{"id":"text-98","type":"text","heading":"","plain_text":"io.on (&#39;relier&#39;, (socket) =&gt;   );io.of (&#39;/ admin&#39;).sur(&#39;relier&#39;, (socket) =&gt;   );","html":"<p>io.on (&#039;relier&#039;, (socket) =&gt;   );io.of (&#039;/ admin&#039;).sur(&#039;relier&#039;, (socket) =&gt;   );</p>"},{"id":"text-99","type":"text","heading":"","plain_text":"Evénement: ‘connexion’\nSynonyme d’événement: «connect».\nDrapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si les clients ne sont pas prêts à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou du fait qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils se trouvent au milieu d&#39;une requête. cycle de réponse).","html":"<p>Evénement: ‘connexion’\nSynonyme d’événement: «connect».\nDrapeau: «volatile»\nDéfinit un modificateur pour une émission d&#039;événement ultérieure selon laquelle les données d&#039;événement peuvent être perdues si les clients ne sont pas prêts à recevoir des messages (en raison de la lenteur du réseau ou d&#039;autres problèmes, ou du fait qu&#039;ils sont connectés au cours d&#039;une longue interrogation et qu&#039;ils se trouvent au milieu d&#039;une requête. cycle de réponse).</p>"},{"id":"text-100","type":"text","heading":"","plain_text":"io.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );","html":"<p>io.volatile.emit (&#039;un évènement&#039; certains: &#039;Les données&#039; );</p>"},{"id":"text-101","type":"text","heading":"","plain_text":"Drapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.","html":"<p>Drapeau: «binaire»\nSpécifie s&#039;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.</p>"},{"id":"text-102","type":"text","heading":"","plain_text":"io.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );","html":"<p>io.binary (faux).émettre(&#039;un évènement&#039; certains: &#039;Les données&#039; );</p>"},{"id":"text-103","type":"text","heading":"","plain_text":"Drapeau: «local»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser au nœud actuel (lorsque l’adaptateur Redis est utilisé).","html":"<p>Drapeau: «local»\nDéfinit un modificateur pour une émission d&#039;événement ultérieure selon laquelle les données d&#039;événement seront uniquement diffuser au nœud actuel (lorsque l’adaptateur Redis est utilisé).</p>"},{"id":"text-104","type":"text","heading":"","plain_text":"io.local.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );","html":"<p>io.local.emit (&#039;un évènement&#039; certains: &#039;Les données&#039; );</p>"},{"id":"text-105","type":"text","heading":"","plain_text":"UNE Prise est la classe fondamentale pour interagir avec les clients du navigateur. UNE Prise appartient à un certain Espace de noms (par défaut /) et utilise un sous-jacent Client communiquer.\nIl convient de noter le Prise ne se rapporte pas directement au TCP / IP sous-jacent réel prise et ce n&#39;est que le nom de la classe.\nDans chaque Espace de noms, vous pouvez également définir des canaux arbitraires (appelés pièce) que le Prise peut rejoindre et partir. Cela fournit un moyen pratique de diffuser à un groupe de Prises (voir Socket # to au dessous de).\nle Prise La classe hérite de EventEmitter. le Prise la classe annule la émettre méthode, et ne modifie aucune autre EventEmitter méthode. Toutes les méthodes documentées ici qui apparaissent également comme EventEmitter méthodes (en dehors de émettre) sont mis en œuvre par EventEmitteret documentation pour EventEmitter s&#39;applique.\nsocket.id\nUn identifiant unique pour la session, qui provient du sous-jacent Client.\nsocket.rooms\nUn hachage de chaînes identifiant les salles dans lesquelles se trouve ce client, indexé par nom de salle.","html":"<p>UNE Prise est la classe fondamentale pour interagir avec les clients du navigateur. UNE Prise appartient à un certain Espace de noms (par défaut /) et utilise un sous-jacent Client communiquer.\nIl convient de noter le Prise ne se rapporte pas directement au TCP / IP sous-jacent réel prise et ce n&#039;est que le nom de la classe.\nDans chaque Espace de noms, vous pouvez également définir des canaux arbitraires (appelés pièce) que le Prise peut rejoindre et partir. Cela fournit un moyen pratique de diffuser à un groupe de Prises (voir Socket # to au dessous de).\nle Prise La classe hérite de EventEmitter. le Prise la classe annule la émettre méthode, et ne modifie aucune autre EventEmitter méthode. Toutes les méthodes documentées ici qui apparaissent également comme EventEmitter méthodes (en dehors de émettre) sont mis en œuvre par EventEmitteret documentation pour EventEmitter s&#039;applique.\nsocket.id\nUn identifiant unique pour la session, qui provient du sous-jacent Client.\nsocket.rooms\nUn hachage de chaînes identifiant les salles dans lesquelles se trouve ce client, indexé par nom de salle.</p>"},{"id":"text-106","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);         ););","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.join (&#039;chambre 237&#039;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);         ););</p>"},{"id":"text-107","type":"text","heading":"","plain_text":"socket.client\nUne référence au sous-jacent Client objet.\nsocket.conn\nUne référence au sous-jacent Client connexion de transport (engine.io Prise objet). Cela permet d&#39;accéder à la couche de transport d&#39;E / S, qui reste (principalement) abstraite du socket TCP / IP réel.\nsocket.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine du moteur.io sous-jacent Client. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.\nprise de main\nLes détails de la poignée de main:","html":"<p>socket.client\nUne référence au sous-jacent Client objet.\nsocket.conn\nUne référence au sous-jacent Client connexion de transport (engine.io Prise objet). Cela permet d&#039;accéder à la couche de transport d&#039;E / S, qui reste (principalement) abstraite du socket TCP / IP réel.\nsocket.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#039;origine du moteur.io sous-jacent Client. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.\nprise de main\nLes détails de la poignée de main:</p>"},{"id":"text-108","type":"text","heading":"","plain_text":"en-têtes:        temps: ,        adresse: ,        xdomain:,        sécurisé:        Publié: ,        URL:,        question:","html":"<p>en-têtes:        temps: ,        adresse: ,        xdomain:,        sécurisé:        Publié: ,        URL:,        question:</p>"},{"id":"text-109","type":"text","heading":"","plain_text":"Usage:","html":"<p>Usage:</p>"},{"id":"text-110","type":"text","heading":"","plain_text":"io.use ((prise, prochaine) =&gt;   laisser poignée de main = socket.handshake;  );io.on (&#39;lien&#39;, (socket) =&gt;   laisser poignée de main = socket.handshake;  );","html":"<p>io.use ((prise, prochaine) =&gt;   laisser poignée de main = socket.handshake;  );io.on (&#039;lien&#039;, (socket) =&gt;   laisser poignée de main = socket.handshake;  );</p>"},{"id":"text-111","type":"text","heading":"","plain_text":"socket.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Paquet et reçoit en paramètre le paquet et une fonction permettant de différer éventuellement l&#39;exécution au middleware enregistré suivant.\nLes erreurs passées aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.","html":"<p>socket.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Paquet et reçoit en paramètre le paquet et une fonction permettant de différer éventuellement l&#039;exécution au middleware enregistré suivant.\nLes erreurs passées aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients.</p>"},{"id":"text-112","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.use ((paquet, ensuite) =&gt;     si (packet.doge === vrai) revenir suivant();                suivant(Nouveau Erreur(&#39;Pas une erreur de chien&#39;));        ););","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.use ((paquet, ensuite) =&gt;     si (packet.doge === vrai) revenir suivant();                suivant(Nouveau Erreur(&#039;Pas une erreur de chien&#039;));        ););</p>"},{"id":"text-113","type":"text","heading":"","plain_text":"socket.send ([…args][, ack])","html":"<p>socket.send ([…args][, ack])</p>"},{"id":"text-114","type":"text","heading":"","plain_text":"args\nack (Une fonction)\nRésultats Prise","html":"<p>args\nack (Une fonction)\nRésultats Prise</p>"},{"id":"text-115","type":"text","heading":"","plain_text":"Envoie un message un événement. Voir socket.emit (eventName[, …args][, ack]).\nsocket.emit (eventName[, …args][, ack])\n(annule EventEmitter.emit)","html":"<p>Envoie un message un événement. Voir socket.emit (eventName[, …args][, ack]).\nsocket.emit (eventName[, …args][, ack])\n(annule EventEmitter.emit)</p>"},{"id":"text-116","type":"text","heading":"","plain_text":"Nom de l&#39;événement (Chaîne)\nargs\nack (Une fonction)\nRésultats Prise","html":"<p>Nom de l&#039;événement (Chaîne)\nargs\nack (Une fonction)\nRésultats Prise</p>"},{"id":"text-117","type":"text","heading":"","plain_text":"Emet un événement sur le socket identifié par le nom de la chaîne. Tout autre paramètre peut être inclus. Toutes les infrastructures de données sérialisables sont prises en charge, y compris Tampon.","html":"<p>Emet un événement sur le socket identifié par le nom de la chaîne. Tout autre paramètre peut être inclus. Toutes les infrastructures de données sérialisables sont prises en charge, y compris Tampon.</p>"},{"id":"text-118","type":"text","heading":"","plain_text":"socket.emit (&#39;Bonjour&#39;, &#39;monde&#39;)socket.emit (&#39;avec-binaire&#39;, 1, &#39;2&#39; 3: &#39;4&#39;, 5: Nouveau Tampon(6));","html":"<p>socket.emit (&#039;Bonjour&#039;, &#039;monde&#039;)socket.emit (&#039;avec-binaire&#039;, 1, &#039;2&#039; 3: &#039;4&#039;, 5: Nouveau Tampon(6));</p>"},{"id":"text-119","type":"text","heading":"","plain_text":"le ack L’argument est facultatif et sera appelé avec la réponse du client.","html":"<p>le ack L’argument est facultatif et sera appelé avec la réponse du client.</p>"},{"id":"text-120","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );        socket.emit (&#39;furet&#39;, &#39;tobi&#39;, (data) =&gt;     console.log (données);         );        );","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.emit (&#039;un évènement&#039; certains: &#039;Les données&#039; );        socket.emit (&#039;furet&#039;, &#039;tobi&#039;, (data) =&gt;     console.log (données);         );        );</p>"},{"id":"text-121","type":"text","heading":"","plain_text":"socket.on (eventName, rappel)\n(hérité de EventEmitter)","html":"<p>socket.on (eventName, rappel)\n(hérité de EventEmitter)</p>"},{"id":"text-122","type":"text","heading":"","plain_text":"Nom de l&#39;événement (Chaîne)\nrappeler (Une fonction)\nRésultats Prise","html":"<p>Nom de l&#039;événement (Chaîne)\nrappeler (Une fonction)\nRésultats Prise</p>"},{"id":"text-123","type":"text","heading":"","plain_text":"Enregistrez un nouveau gestionnaire pour l&#39;événement donné.","html":"<p>Enregistrez un nouveau gestionnaire pour l&#039;événement donné.</p>"},{"id":"text-124","type":"text","heading":"","plain_text":"socket.on (&#39;nouvelles&#39;, (data) =&gt;   console.log (données););socket.on (&#39;nouvelles&#39;, (arg1, arg2, arg3) =&gt;   );socket.on (&#39;nouvelles&#39;, (data, callback) =&gt;         rappeler(0));","html":"<p>socket.on (&#039;nouvelles&#039;, (data) =&gt;   console.log (données););socket.on (&#039;nouvelles&#039;, (arg1, arg2, arg3) =&gt;   );socket.on (&#039;nouvelles&#039;, (data, callback) =&gt;         rappeler(0));</p>"},{"id":"text-125","type":"text","heading":"","plain_text":"socket.once (eventName, listener)\nsocket.removeListener (eventName, listener)\nsocket.removeAllListeners ([eventName])\nsocket.eventNames ()\nHérité de EventEmitter (avec d&#39;autres méthodes non mentionnées ici). Voir la documentation de Node.js pour la événements module.\nsocket.join (room[, callback])","html":"<p>socket.once (eventName, listener)\nsocket.removeListener (eventName, listener)\nsocket.removeAllListeners ([eventName])\nsocket.eventNames ()\nHérité de EventEmitter (avec d&#039;autres méthodes non mentionnées ici). Voir la documentation de Node.js pour la événements module.\nsocket.join (room[, callback])</p>"},{"id":"text-126","type":"text","heading":"","plain_text":"pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner","html":"<p>pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner</p>"},{"id":"text-127","type":"text","heading":"","plain_text":"Ajoute le client au pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).","html":"<p>Ajoute le client au pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).</p>"},{"id":"text-128","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);                 io.to (&#39;chambre 237&#39;).émettre(&quot;un nouvel utilisateur a rejoint la salle&quot;)         ););","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.join (&#039;chambre 237&#039;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);                 io.to (&#039;chambre 237&#039;).émettre(&quot;un nouvel utilisateur a rejoint la salle&quot;)         ););</p>"},{"id":"text-129","type":"text","heading":"","plain_text":"Les mécanismes de jonction des salles sont gérés par le Adaptateur qui a été configuré (voir Adaptateur # serveur ci-dessus), par défaut sur socket.io-adaptateur.\nPour votre commodité, chaque socket rejoint automatiquement une pièce identifiée par son identifiant (voir Socket # id). Cela facilite la diffusion de messages vers d&#39;autres sockets:","html":"<p>Les mécanismes de jonction des salles sont gérés par le Adaptateur qui a été configuré (voir Adaptateur # serveur ci-dessus), par défaut sur socket.io-adaptateur.\nPour votre commodité, chaque socket rejoint automatiquement une pièce identifiée par son identifiant (voir Socket # id). Cela facilite la diffusion de messages vers d&#039;autres sockets:</p>"},{"id":"text-130","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;dire à quelqu&#39;un&#39;, (id, msg) =&gt;                     socket.to (id) .emit (&#39;mon message&#39;, msg);        ););","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.on (&#039;dire à quelqu&#039;un&#039;, (id, msg) =&gt;                     socket.to (id) .emit (&#039;mon message&#039;, msg);        ););</p>"},{"id":"text-131","type":"text","heading":"","plain_text":"socket.join (chambres[, callback])","html":"<p>socket.join (chambres[, callback])</p>"},{"id":"text-132","type":"text","heading":"","plain_text":"pièces (Tableau)\nrappeler (Une fonction)\nRésultats Prise pour chaîner","html":"<p>pièces (Tableau)\nrappeler (Une fonction)\nRésultats Prise pour chaîner</p>"},{"id":"text-133","type":"text","heading":"","plain_text":"Ajoute le client à la liste des salles et déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nsocket.leave (room[, callback])","html":"<p>Ajoute le client à la liste des salles et déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nsocket.leave (room[, callback])</p>"},{"id":"text-134","type":"text","heading":"","plain_text":"pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner","html":"<p>pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner</p>"},{"id":"text-135","type":"text","heading":"","plain_text":"Supprime le client de pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nLes chambres sont laissées automatiquement lors de la déconnexion.\nsocket.to (salle)","html":"<p>Supprime le client de pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nLes chambres sont laissées automatiquement lors de la déconnexion.\nsocket.to (salle)</p>"},{"id":"text-136","type":"text","heading":"","plain_text":"pièce (Chaîne)\nRésultats Prise pour chaîner","html":"<p>pièce (Chaîne)\nRésultats Prise pour chaîner</p>"},{"id":"text-137","type":"text","heading":"","plain_text":"Définit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce (la prise elle-même étant exclue).\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.","html":"<p>Définit un modificateur pour une émission d&#039;événement ultérieure que l&#039;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce (la prise elle-même étant exclue).\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois.</p>"},{"id":"text-138","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;           socket.to (&#39;autres&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );          socket.to (&#39;room1&#39;).à(&#39;room2&#39;).émettre(&#39;Bonjour&#39;)          socket.to (). emit (&#39;Hey&#39;)    );","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;           socket.to (&#039;autres&#039;).émettre(&#039;un évènement&#039; certains: &#039;Les données&#039; );          socket.to (&#039;room1&#039;).à(&#039;room2&#039;).émettre(&#039;Bonjour&#039;)          socket.to (). emit (&#039;Hey&#039;)    );</p>"},{"id":"text-139","type":"text","heading":"","plain_text":"Remarque: les accusés de réception ne sont pas pris en charge lors de la diffusion.\nsocket.in (salle)\nSynonyme de socket.to (salle).\nsocket.compress (valeur)","html":"<p>Remarque: les accusés de réception ne sont pas pris en charge lors de la diffusion.\nsocket.in (salle)\nSynonyme de socket.to (salle).\nsocket.compress (valeur)</p>"},{"id":"text-140","type":"text","heading":"","plain_text":"valeur (Booléen) si le paquet suivant sera compressé\nRésultats Prise pour chaîner","html":"<p>valeur (Booléen) si le paquet suivant sera compressé\nRésultats Prise pour chaîner</p>"},{"id":"text-141","type":"text","heading":"","plain_text":"Définit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement comprimé si la valeur est vrai. Par défaut à vrai lorsque vous n&#39;appelez pas la méthode.","html":"<p>Définit un modificateur pour une émission d&#039;événement ultérieure selon laquelle les données d&#039;événement seront uniquement comprimé si la valeur est vrai. Par défaut à vrai lorsque vous n&#039;appelez pas la méthode.</p>"},{"id":"text-142","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.compress (faux).émettre(&#39;non compressé&#39;, &quot;c&#39;est rugueux&quot;));","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.compress (faux).émettre(&#039;non compressé&#039;, &quot;c&#039;est rugueux&quot;));</p>"},{"id":"text-143","type":"text","heading":"","plain_text":"socket.disconnect (close)","html":"<p>socket.disconnect (close)</p>"},{"id":"text-144","type":"text","heading":"","plain_text":"Fermer (Booléen) s&#39;il faut fermer la connexion sous-jacente\nRésultats Prise","html":"<p>Fermer (Booléen) s&#039;il faut fermer la connexion sous-jacente\nRésultats Prise</p>"},{"id":"text-145","type":"text","heading":"","plain_text":"Déconnecte ce client. Si la valeur de fermeture est vrai, ferme la connexion sous-jacente. Sinon, il ne fait que déconnecter l&#39;espace de noms.","html":"<p>Déconnecte ce client. Si la valeur de fermeture est vrai, ferme la connexion sous-jacente. Sinon, il ne fait que déconnecter l&#039;espace de noms.</p>"},{"id":"text-146","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         setTimeout (() =&gt; socket.disconnect (vrai), 5000));","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         setTimeout (() =&gt; socket.disconnect (vrai), 5000));</p>"},{"id":"text-147","type":"text","heading":"","plain_text":"Drapeau: ‘broadcast’\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser à tous les sockets, mais l&#39;expéditeur.","html":"<p>Drapeau: ‘broadcast’\nDéfinit un modificateur pour une émission d&#039;événement ultérieure selon laquelle les données d&#039;événement seront uniquement diffuser à tous les sockets, mais l&#039;expéditeur.</p>"},{"id":"text-148","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.broadcast.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.broadcast.emit (&#039;un évènement&#039; certains: &#039;Les données&#039; ); );</p>"},{"id":"text-149","type":"text","heading":"","plain_text":"Drapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si le client n&#39;est pas prêt à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou parce qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils sont au milieu d&#39;une demande. cycle de réponse).","html":"<p>Drapeau: «volatile»\nDéfinit un modificateur pour une émission d&#039;événement ultérieure selon laquelle les données d&#039;événement peuvent être perdues si le client n&#039;est pas prêt à recevoir des messages (en raison de la lenteur du réseau ou d&#039;autres problèmes, ou parce qu&#039;ils sont connectés au cours d&#039;une longue interrogation et qu&#039;ils sont au milieu d&#039;une demande. cycle de réponse).</p>"},{"id":"text-150","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.volatile.emit (&#039;un évènement&#039; certains: &#039;Les données&#039; ); );</p>"},{"id":"text-151","type":"text","heading":"","plain_text":"Drapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.","html":"<p>Drapeau: «binaire»\nSpécifie s&#039;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux.</p>"},{"id":"text-152","type":"text","heading":"","plain_text":"var io = exiger(&#39;socket.io&#39;) ();io.on (&#39;lien&#39;, une fonction(prise)        socket.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; ); );","html":"<p>var io = exiger(&#039;socket.io&#039;) ();io.on (&#039;lien&#039;, une fonction(prise)        socket.binary (faux).émettre(&#039;un évènement&#039; certains: &#039;Les données&#039; ); );</p>"},{"id":"text-153","type":"text","heading":"","plain_text":"Evénement: &quot;déconnecter&quot;","html":"<p>Evénement: &quot;déconnecter&quot;</p>"},{"id":"text-154","type":"text","heading":"","plain_text":"raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)","html":"<p>raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)</p>"},{"id":"text-155","type":"text","heading":"","plain_text":"Tiré lors de la déconnexion.","html":"<p>Tiré lors de la déconnexion.</p>"},{"id":"text-156","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;             ););","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.on (&#039;déconnecter&#039;, (raison) =&gt;             ););</p>"},{"id":"text-157","type":"text","heading":"","plain_text":"Raisons possibles:","html":"<p>Raisons possibles:</p>"},{"id":"text-158","type":"text","heading":"","plain_text":"Raison\nCôté\nLa description","html":"<p>Raison\nCôté\nLa description</p>"},{"id":"text-159","type":"text","heading":"","plain_text":"erreur de transport\nDu côté serveur\nErreur de transport","html":"<p>erreur de transport\nDu côté serveur\nErreur de transport</p>"},{"id":"text-160","type":"text","heading":"","plain_text":"Déconnexion de l&#39;espace de noms du serveur\nDu côté serveur\nLe serveur effectue un socket.disconnect ()","html":"<p>Déconnexion de l&#039;espace de noms du serveur\nDu côté serveur\nLe serveur effectue un socket.disconnect ()</p>"},{"id":"text-161","type":"text","heading":"","plain_text":"déconnexion de l&#39;espace de noms du client\nCôté client\nVous avez déconnecté le paquet du client","html":"<p>déconnexion de l&#039;espace de noms du client\nCôté client\nVous avez déconnecté le paquet du client</p>"},{"id":"text-162","type":"text","heading":"","plain_text":"ping timeout\nCôté client\nLe client a cessé de répondre aux pings dans le délai imparti (selon le pingTimeout réglage de configuration)","html":"<p>ping timeout\nCôté client\nLe client a cessé de répondre aux pings dans le délai imparti (selon le pingTimeout réglage de configuration)</p>"},{"id":"text-163","type":"text","heading":"","plain_text":"transport à proximité\nCôté client\nLe client a cessé d&#39;envoyer des données","html":"<p>transport à proximité\nCôté client\nLe client a cessé d&#039;envoyer des données</p>"},{"id":"text-164","type":"text","heading":"","plain_text":"Evénement: ‘erreur’","html":"<p>Evénement: ‘erreur’</p>"},{"id":"text-165","type":"text","heading":"","plain_text":"Erreur (Objet) objet d&#39;erreur","html":"<p>Erreur (Objet) objet d&#039;erreur</p>"},{"id":"text-166","type":"text","heading":"","plain_text":"Déclenché lorsqu&#39;une erreur survient.","html":"<p>Déclenché lorsqu&#039;une erreur survient.</p>"},{"id":"text-167","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;Erreur&#39;, (erreur) =&gt;             ););","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.on (&#039;Erreur&#039;, (erreur) =&gt;             ););</p>"},{"id":"text-168","type":"text","heading":"","plain_text":"Evénement: &quot;déconnexion&quot;","html":"<p>Evénement: &quot;déconnexion&quot;</p>"},{"id":"text-169","type":"text","heading":"","plain_text":"raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)","html":"<p>raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)</p>"},{"id":"text-170","type":"text","heading":"","plain_text":"Se déclenche lorsque le client va être déconnecté (mais n’a pas quitté son pièces encore).","html":"<p>Se déclenche lorsque le client va être déconnecté (mais n’a pas quitté son pièces encore).</p>"},{"id":"text-171","type":"text","heading":"","plain_text":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;     laisser chambres = Objet.keys (socket.rooms);            ););","html":"<p>io.on (&#039;lien&#039;, (socket) =&gt;         socket.on (&#039;déconnecter&#039;, (raison) =&gt;     laisser chambres = Objet.keys (socket.rooms);            ););</p>"},{"id":"text-172","type":"text","heading":"","plain_text":"Ce sont des événements réservés (avec relier, nouveauListener et removeListener) qui ne peuvent pas être utilisés comme noms d’événements.\nle Client La classe représente une connexion de transport entrant (engine.io). UNE Client peut être associé à de nombreux multiplexés Prises qui appartiennent à différents Espace de nomss.\nclient.conn\nUne référence au sous-jacent moteur.io Prise lien.\nclient.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine de la connexion engine.io. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.","html":"<p>Ce sont des événements réservés (avec relier, nouveauListener et removeListener) qui ne peuvent pas être utilisés comme noms d’événements.\nle Client La classe représente une connexion de transport entrant (engine.io). UNE Client peut être associé à de nombreux multiplexés Prises qui appartiennent à différents Espace de nomss.\nclient.conn\nUne référence au sous-jacent moteur.io Prise lien.\nclient.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#039;origine de la connexion engine.io. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.</p>"},{"id":"text-173","type":"text","heading":"","plain_text":"Pris une erreur? Éditez cette page sur GitHub","html":"<p>Pris une erreur? Éditez cette page sur GitHub</p>"},{"id":"text-174","type":"text","heading":"","plain_text":"Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]","html":"<p>Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]</p>"}],"sections":[{"id":"text-1","heading":"Text","content":"Exposé par require (&#39;socket.io&#39;).\nnouveau serveur (httpServer[, options])"},{"id":"text-2","heading":"Text","content":"httpServer (http.Server) le serveur à lier.\noptions (Objet)"},{"id":"text-3","heading":"Text","content":"Fonctionne avec et sans Nouveau:"},{"id":"text-4","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) ();const Serveur = exiger(&#39;socket.io&#39;)const io = Nouveau Serveur();"},{"id":"text-5","heading":"Text","content":"Options disponibles:"},{"id":"text-6","heading":"Text","content":"Option\nValeur par défaut\nLa description"},{"id":"text-7","heading":"Text","content":"chemin\n/socket.io\nnom du chemin à capturer"},{"id":"text-8","heading":"Text","content":"servirClient\nvrai\nsi servir les fichiers du client"},{"id":"text-9","heading":"Text","content":"adaptateur\n&#8211;\nl&#39;adaptateur à utiliser. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur"},{"id":"text-10","heading":"Text","content":"origines\n*\nles origines autorisées"},{"id":"text-11","heading":"Text","content":"analyseur\n&#8211;\nl&#39;analyseur à utiliser. Par défaut, une instance de Analyseur qui est livré avec socket.io. Voir socket.io-analyseur."},{"id":"text-12","heading":"Text","content":"Options disponibles pour le serveur Engine.IO sous-jacent:"},{"id":"text-13","heading":"Text","content":"Option\nValeur par défaut\nLa description"},{"id":"text-14","heading":"Text","content":"pingTimeout\n5000\ncombien de ms sans paquet pong considérer la connexion fermée"},{"id":"text-15","heading":"Text","content":"pingInterval\n25000\ncombien de ms avant d&#39;envoyer un nouveau paquet ping"},{"id":"text-16","heading":"Text","content":"upgradeTimeout\n10000\ncombien de ms avant l&#39;annulation d&#39;une mise à niveau de transport incomplète"},{"id":"text-17","heading":"Text","content":"maxHttpBufferSize\n10e7\nnombre d&#39;octets ou de caractères qu&#39;un message peut contenir avant la fermeture de la session (pour éviter les dénis de service)."},{"id":"text-18","heading":"Text","content":"allowRequest"},{"id":"text-19","heading":"Text","content":"Une fonction qui reçoit une demande de négociation ou de mise à niveau donnée en tant que premier paramètre et peut décider de continuer ou non. Le deuxième argument est une fonction qui doit être appelée avec les informations décidées: fn (err, succès), où Succès est une valeur booléenne où false signifie que la demande est rejetée et err est un code d&#39;erreur."},{"id":"text-20","heading":"Text","content":"les transports\n['polling', 'websocket']\ntransports pour permettre les connexions à"},{"id":"text-21","heading":"Text","content":"allowUpgrades\nvrai\nautoriser les mises à niveau de transport"},{"id":"text-22","heading":"Text","content":"parMessageDeflate\nvrai\nparamètres de l&#39;extension WebSocket permessage-deflate (voir ws module aps docs). Mis à faux pour désactiver."},{"id":"text-23","heading":"Text","content":"httpCompression\nvrai\nparamètres de la compression http pour les transports d&#39;interrogation (voir zlib api docs). Mis à faux pour désactiver."},{"id":"text-24","heading":"Text","content":"biscuit\nio\nnom du cookie HTTP qui contient le client à envoyer dans le cadre des en-têtes de réponse de négociation. Mis à faux ne pas en envoyer."},{"id":"text-25","heading":"Text","content":"cookiePath\n/\nchemin de la ci-dessus biscuit option. Si false, aucun chemin ne sera envoyé, ce qui signifie que les navigateurs n&#39;enverront que le cookie sur le chemin attaché engine.io (/engine.io). Définissez false pour ne pas enregistrer le cookie io sur toutes les demandes."},{"id":"text-26","heading":"Text","content":"cookieHttpOnly\nvrai\nsi vrai Les cookies HttpOnly io ne sont pas accessibles par les API côté client, telles que JavaScript. Cette option n&#39;a aucun effet si biscuit ou cookiePath est réglé sur faux."},{"id":"text-27","heading":"Text","content":"wsEngine\nws\nquelle implémentation de serveur WebSocket utiliser. Le module spécifié doit être conforme à la ws interface (voir ws module api docs). La valeur par défaut est ws. Un autre addon c ++ est également disponible en installant uws module."},{"id":"text-28","heading":"Text","content":"Parmi ces options:"},{"id":"text-29","heading":"Text","content":"le pingTimeout et pingInterval les paramètres auront un impact sur le délai avant qu&#39;un client sache que le serveur n&#39;est plus disponible. Par exemple, si la connexion TCP sous-jacente n’est pas correctement fermée en raison d’un problème de réseau, un client doit attendre jusqu’à pingTimeout + pingInterval ms avant d&#39;obtenir un déconnecter un événement."},{"id":"text-30","heading":"Text","content":"L&#39;ordre du les transports le tableau est important. Par défaut, une connexion d&#39;interrogation longue est d&#39;abord établie, puis mise à niveau vers WebSocket si possible. En utilisant ['websocket']    signifie qu&#39;il n&#39;y aura pas de solution de rechange si une connexion WebSocket ne peut pas être ouverte."},{"id":"text-31","heading":"Text","content":"const serveur = exiger(&#39;http&#39;) .createServer ();const io = exiger(&#39;socket.io&#39;) (serveur,         chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)"},{"id":"text-32","heading":"Text","content":"nouveau serveur (port[, options])"},{"id":"text-33","heading":"Text","content":"Port (Nombre) un port à écouter (un nouveau http.Server sera créé)\noptions (Objet)"},{"id":"text-34","heading":"Text","content":"Voir ci-dessus pour la liste des disponibles options."},{"id":"text-35","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) (3000        chemin: &#39;/tester&#39;,        serveClient: faux,          pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);"},{"id":"text-36","heading":"Text","content":"nouveau serveur (options)\nVoir ci-dessus pour la liste des disponibles options."},{"id":"text-37","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) (        chemin: &#39;/tester&#39;,        serveClient: faux,);const serveur = exiger(&#39;http&#39;) .createServer ();io.attach (serveur,         pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);server.listen (3000)io.attach (3000        pingInterval: 10000,        pingTimeout: 5000,        biscuit: faux);"},{"id":"text-38","heading":"Text","content":"serveur.sockets\nUn alias pour la valeur par défaut (/) espace de noms."},{"id":"text-39","heading":"Text","content":"io.sockets.emit (&#39;salut&#39;, &#39;toutes les personnes&#39;)io.of (&#39;/&#39;).émettre(&#39;salut&#39;, &#39;toutes les personnes&#39;)"},{"id":"text-40","heading":"Text","content":"server.serveClient ([value])"},{"id":"text-41","heading":"Text","content":"valeur (Booléen)\nRésultats Serveur | Booléen"},{"id":"text-42","heading":"Text","content":"Si valeur est vrai le serveur connecté (voir Serveur # attaché) servira les fichiers du client. Par défaut à vrai. Cette méthode n&#39;a aucun effet après attacher est appelé. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle."},{"id":"text-43","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) (http,  servirClient: faux );const io = exiger(&#39;socket.io&#39;) ();io.serveClient (faux)io.attach (http);"},{"id":"text-44","heading":"Text","content":"server.path ([value])"},{"id":"text-45","heading":"Text","content":"valeur (Chaîne)\nRésultats Serveur | Chaîne"},{"id":"text-46","heading":"Text","content":"Définit le chemin valeur sous lequel moteur.io et les fichiers statiques seront servis. Par défaut à /socket.io. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle."},{"id":"text-47","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) ();io.path (&#39;/ myownpath&#39;)const socket = io (        chemin: &#39;/ myownpath&#39;);"},{"id":"text-48","heading":"Text","content":"server.adapter ([value])"},{"id":"text-49","heading":"Text","content":"valeur (Adaptateur)\nRésultats Serveur | Adaptateur"},{"id":"text-50","heading":"Text","content":"Définit l&#39;adaptateur valeur. Par défaut, une instance de Adaptateur qui est livré avec socket.io qui est basé sur la mémoire. Voir socket.io-adaptateur. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle."},{"id":"text-51","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) (3000)const redis = exiger(&#39;socket.io-redis&#39;)io.adapter (redis ( hôte: &#39;localhost&#39;, Port: 6379 ));"},{"id":"text-52","heading":"Text","content":"server.origins ([value])"},{"id":"text-53","heading":"Text","content":"valeur (String | String[])\nRésultats Serveur | Chaîne"},{"id":"text-54","heading":"Text","content":"Définit les origines autorisées valeur. Par défaut, toutes les origines sont autorisées. Si aucun argument n&#39;est fourni, cette méthode retourne la valeur actuelle."},{"id":"text-55","heading":"Text","content":"io.origines ([[[[&quot;https://foo.example.com:443&quot;])"},{"id":"text-56","heading":"Text","content":"server.origins (fn)"},{"id":"text-57","heading":"Text","content":"fn (Une fonction)\nRésultats Serveur"},{"id":"text-58","heading":"Text","content":"Fournit une fonction prenant deux arguments origine: String et rappel (erreur, succès), où Succès est une valeur booléenne indiquant si l&#39;origine est autorisée ou non. Si Succès est réglé sur faux, Erreur doit être fourni sous forme de valeur de chaîne qui sera ajoutée à la réponse du serveur, par ex. “Origine non autorisée”.\nInconvénients potentiels:"},{"id":"text-59","heading":"Text","content":"dans certaines situations, lorsqu&#39;il est impossible de déterminer origine il peut avoir valeur de *\nComme cette fonction sera exécutée pour chaque requête, il est conseillé de la faire fonctionner le plus rapidement possible.\nSi socket.io est utilisé avec Express, les en-têtes CORS ne seront affectés que pour socket.io demandes. Pour Express, vous pouvez utiliser cors."},{"id":"text-60","heading":"Text","content":"io.origines ((origine, rappel) =&gt;   si (origine! == &#39;https://foo.example.com&#39;)     revenir rappeler(&#39;origine non autorisée&#39;, faux)                rappeler(nul, vrai));"},{"id":"text-61","heading":"Text","content":"server.attach (httpServer[, options])"},{"id":"text-62","heading":"Text","content":"httpServer (http.Server) le serveur auquel s&#39;attacher\noptions (Objet)"},{"id":"text-63","heading":"Text","content":"Attache le Serveur à une instance de engine.io sur httpServer avec le fourni options (éventuellement).\nserver.attach (port[, options])"},{"id":"text-64","heading":"Text","content":"Port (Nombre) le port pour écouter\noptions (Objet)"},{"id":"text-65","heading":"Text","content":"Attache le Serveur à une instance de engine.io sur un nouveau http.Server avec le options (éventuellement).\nserver.listen (httpServer[, options])\nSynonyme de server.attach (httpServer[, options]).\nserver.listen (port[, options])\nSynonyme de server.attach (port[, options]).\nserver.bind (moteur)"},{"id":"text-66","heading":"Text","content":"moteur (engine.Server)\nRésultats Serveur"},{"id":"text-67","heading":"Text","content":"Utilisation avancée uniquement. Lie le serveur à un moteur spécifique.io Serveur (ou API compatible) instance.\nserver.onconnection (socket)"},{"id":"text-68","heading":"Text","content":"prise (engine.Socket)\nRésultats Serveur"},{"id":"text-69","heading":"Text","content":"Utilisation avancée uniquement. Crée un nouveau socket.io client depuis le engine.io entrant (ou une API compatible) Prise.\nserveur.of (nsp)"},{"id":"text-70","heading":"Text","content":"nsp (String | RegExp | Fonction)\nRésultats Espace de noms"},{"id":"text-71","heading":"Text","content":"Initialise et récupère le donné Espace de noms par son identifiant de chemin nsp. Si l&#39;espace de nom a déjà été initialisé, il le renvoie immédiatement."},{"id":"text-72","heading":"Text","content":"const adminNamespace = io.of (&#39;/ admin&#39;)"},{"id":"text-73","heading":"Text","content":"Une expression régulière ou une fonction peut également être fournie, afin de créer un espace de nom de manière dynamique:"},{"id":"text-74","heading":"Text","content":"const dynamicNsp = io.of (/ ^  / dynamic-  d + $ /).sur(&#39;relier&#39;, (socket) =&gt;   const newNamespace = socket.nsp;           newNamespace.emit (&#39;Bonjour&#39;));const socket = io (&#39;/ dynamic-101&#39;)dynamicNsp.emit (&#39;Bonjour&#39;)dynamicNsp.use ((prise, prochaine) =&gt; );"},{"id":"text-75","heading":"Text","content":"Avec une fonction:"},{"id":"text-76","heading":"Text","content":"io.of ((nom, requête, suivant) =&gt;         suivant(nul, checkToken (query.token));).sur(&#39;relier&#39;, (socket) =&gt; );"},{"id":"text-77","heading":"Text","content":"server.close ([callback])\nFerme le serveur socket.io. le rappeler l&#39;argument est facultatif et sera appelé lorsque toutes les connexions seront fermées."},{"id":"text-78","heading":"Text","content":"const Serveur = exiger(&#39;socket.io&#39;)const PORT = 3030;const serveur = exiger(&#39;http&#39;).Serveur();const io = serveur (PORT);io.close (); server.listen (PORT); io = serveur (serveur);"},{"id":"text-79","heading":"Text","content":"server.engine.generateId\nEcrase la méthode par défaut pour générer votre identifiant de socket personnalisé.\nLa fonction est appelée avec un objet de requête de noeud (http.IncomingMessage) comme premier paramètre."},{"id":"text-80","heading":"Text","content":"io.engine.generateId = (req) =&gt;   revenir &quot;custom: id:&quot; + custom_id ++;"},{"id":"text-81","heading":"Text","content":"Représente un pool de sockets connectés sous une étendue donnée identifiée par un chemin (par exemple: /bavarder).\nUn client se connecte toujours à / (l’espace de noms principal), puis connectez-vous potentiellement à d’autres espaces de noms (tout en utilisant la même connexion sous-jacente).\nPour savoir comment et pourquoi, consultez: Pièces et espaces de noms.\nnamespace.name\nLa propriété d&#39;identifiant d&#39;espace de nom.\nnamespace.connected\nLe hash de Prise objets connectés à cet espace de noms, indexés par identifiant.\nnamespace.adapter\nle Adaptateur utilisé pour l&#39;espace de noms. Utile lorsque vous utilisez le Adaptateur basé sur Redis, car il expose des méthodes pour gérer les sockets et les salles de votre cluster.\nRemarque: l&#39;adaptateur de l&#39;espace de noms principal est accessible avec io.of (&#39;/&#39;). adaptateur.\nnamespace.to (room)"},{"id":"text-82","heading":"Text","content":"pièce (Chaîne)\nRésultats Espace de noms pour chaîner"},{"id":"text-83","heading":"Text","content":"Définit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce.\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois."},{"id":"text-84","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) ();const adminNamespace = io.of (&#39;/ admin&#39;)adminNamespace.to (&#39;niveau 1&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );"},{"id":"text-85","heading":"Text","content":"namespace.in (room)\nSynonyme de namespace.to (salle).\nnamespace.emit (eventName[, …args])\nÉmet un événement à tous les clients connectés. Les deux suivants sont équivalents:"},{"id":"text-86","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) ();io.emit (&#39;un événement envoyé à tous les clients connectés&#39;) const chat = io.of (&#39;/bavarder&#39;)chat.emit (&#39;un événement envoyé à tous les clients connectés dans l&#39;espace de noms de discussion&#39;)"},{"id":"text-87","heading":"Text","content":"Remarque: les accusés de réception ne sont pas pris en charge lors de l&#39;émission à partir d&#39;un espace de noms.\nnamespace.clients (rappel)\nObtient une liste d&#39;ID de clients connectés à cet espace de noms (sur tous les nœuds, le cas échéant)."},{"id":"text-88","heading":"Text","content":"const io = exiger(&#39;socket.io&#39;) ();io.of (&#39;/bavarder&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );"},{"id":"text-89","heading":"Text","content":"Un exemple pour obtenir tous les clients dans la chambre de l’espace de noms:"},{"id":"text-90","heading":"Text","content":"io.of (&#39;/bavarder&#39;).dans(&#39;général&#39;) .clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );"},{"id":"text-91","heading":"Text","content":"Comme pour la diffusion, tous les clients de l’espace de nom par défaut sont tous les clients:"},{"id":"text-92","heading":"Text","content":"io.clients ((erreur, clients) =&gt;   si (Erreur) jeter Erreur;  console.log (clients); );"},{"id":"text-93","heading":"Text","content":"namespace.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Prise, et reçoit comme paramètres le socket et une fonction permettant de différer éventuellement l’exécution au prochain middleware enregistré.\nLes erreurs transmises aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients."},{"id":"text-94","heading":"Text","content":"io.use ((prise, prochaine) =&gt;   si (socket.request.headers.cookie) revenir suivant();        suivant(Nouveau Erreur(&#39;Erreur d&#39;authentification&#39;)););"},{"id":"text-95","heading":"Text","content":"Evénement: &#39;connect&#39;"},{"id":"text-96","heading":"Text","content":"prise (Prise) connexion socket avec le client"},{"id":"text-97","heading":"Text","content":"Tiré sur une connexion du client."},{"id":"text-98","heading":"Text","content":"io.on (&#39;relier&#39;, (socket) =&gt;   );io.of (&#39;/ admin&#39;).sur(&#39;relier&#39;, (socket) =&gt;   );"},{"id":"text-99","heading":"Text","content":"Evénement: ‘connexion’\nSynonyme d’événement: «connect».\nDrapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si les clients ne sont pas prêts à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou du fait qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils se trouvent au milieu d&#39;une requête. cycle de réponse)."},{"id":"text-100","heading":"Text","content":"io.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );"},{"id":"text-101","heading":"Text","content":"Drapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux."},{"id":"text-102","heading":"Text","content":"io.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );"},{"id":"text-103","heading":"Text","content":"Drapeau: «local»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser au nœud actuel (lorsque l’adaptateur Redis est utilisé)."},{"id":"text-104","heading":"Text","content":"io.local.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );"},{"id":"text-105","heading":"Text","content":"UNE Prise est la classe fondamentale pour interagir avec les clients du navigateur. UNE Prise appartient à un certain Espace de noms (par défaut /) et utilise un sous-jacent Client communiquer.\nIl convient de noter le Prise ne se rapporte pas directement au TCP / IP sous-jacent réel prise et ce n&#39;est que le nom de la classe.\nDans chaque Espace de noms, vous pouvez également définir des canaux arbitraires (appelés pièce) que le Prise peut rejoindre et partir. Cela fournit un moyen pratique de diffuser à un groupe de Prises (voir Socket # to au dessous de).\nle Prise La classe hérite de EventEmitter. le Prise la classe annule la émettre méthode, et ne modifie aucune autre EventEmitter méthode. Toutes les méthodes documentées ici qui apparaissent également comme EventEmitter méthodes (en dehors de émettre) sont mis en œuvre par EventEmitteret documentation pour EventEmitter s&#39;applique.\nsocket.id\nUn identifiant unique pour la session, qui provient du sous-jacent Client.\nsocket.rooms\nUn hachage de chaînes identifiant les salles dans lesquelles se trouve ce client, indexé par nom de salle."},{"id":"text-106","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);         ););"},{"id":"text-107","heading":"Text","content":"socket.client\nUne référence au sous-jacent Client objet.\nsocket.conn\nUne référence au sous-jacent Client connexion de transport (engine.io Prise objet). Cela permet d&#39;accéder à la couche de transport d&#39;E / S, qui reste (principalement) abstraite du socket TCP / IP réel.\nsocket.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine du moteur.io sous-jacent Client. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur.\nprise de main\nLes détails de la poignée de main:"},{"id":"text-108","heading":"Text","content":"en-têtes:        temps: ,        adresse: ,        xdomain:,        sécurisé:        Publié: ,        URL:,        question:"},{"id":"text-109","heading":"Text","content":"Usage:"},{"id":"text-110","heading":"Text","content":"io.use ((prise, prochaine) =&gt;   laisser poignée de main = socket.handshake;  );io.on (&#39;lien&#39;, (socket) =&gt;   laisser poignée de main = socket.handshake;  );"},{"id":"text-111","heading":"Text","content":"socket.use (fn)\nEnregistre un middleware, une fonction qui est exécutée pour chaque entrée Paquet et reçoit en paramètre le paquet et une fonction permettant de différer éventuellement l&#39;exécution au middleware enregistré suivant.\nLes erreurs passées aux rappels de middleware sont envoyées comme spéciales Erreur paquets aux clients."},{"id":"text-112","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.use ((paquet, ensuite) =&gt;     si (packet.doge === vrai) revenir suivant();                suivant(Nouveau Erreur(&#39;Pas une erreur de chien&#39;));        ););"},{"id":"text-113","heading":"Text","content":"socket.send ([…args][, ack])"},{"id":"text-114","heading":"Text","content":"args\nack (Une fonction)\nRésultats Prise"},{"id":"text-115","heading":"Text","content":"Envoie un message un événement. Voir socket.emit (eventName[, …args][, ack]).\nsocket.emit (eventName[, …args][, ack])\n(annule EventEmitter.emit)"},{"id":"text-116","heading":"Text","content":"Nom de l&#39;événement (Chaîne)\nargs\nack (Une fonction)\nRésultats Prise"},{"id":"text-117","heading":"Text","content":"Emet un événement sur le socket identifié par le nom de la chaîne. Tout autre paramètre peut être inclus. Toutes les infrastructures de données sérialisables sont prises en charge, y compris Tampon."},{"id":"text-118","heading":"Text","content":"socket.emit (&#39;Bonjour&#39;, &#39;monde&#39;)socket.emit (&#39;avec-binaire&#39;, 1, &#39;2&#39; 3: &#39;4&#39;, 5: Nouveau Tampon(6));"},{"id":"text-119","heading":"Text","content":"le ack L’argument est facultatif et sera appelé avec la réponse du client."},{"id":"text-120","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; );        socket.emit (&#39;furet&#39;, &#39;tobi&#39;, (data) =&gt;     console.log (données);         );        );"},{"id":"text-121","heading":"Text","content":"socket.on (eventName, rappel)\n(hérité de EventEmitter)"},{"id":"text-122","heading":"Text","content":"Nom de l&#39;événement (Chaîne)\nrappeler (Une fonction)\nRésultats Prise"},{"id":"text-123","heading":"Text","content":"Enregistrez un nouveau gestionnaire pour l&#39;événement donné."},{"id":"text-124","heading":"Text","content":"socket.on (&#39;nouvelles&#39;, (data) =&gt;   console.log (données););socket.on (&#39;nouvelles&#39;, (arg1, arg2, arg3) =&gt;   );socket.on (&#39;nouvelles&#39;, (data, callback) =&gt;         rappeler(0));"},{"id":"text-125","heading":"Text","content":"socket.once (eventName, listener)\nsocket.removeListener (eventName, listener)\nsocket.removeAllListeners ([eventName])\nsocket.eventNames ()\nHérité de EventEmitter (avec d&#39;autres méthodes non mentionnées ici). Voir la documentation de Node.js pour la événements module.\nsocket.join (room[, callback])"},{"id":"text-126","heading":"Text","content":"pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner"},{"id":"text-127","heading":"Text","content":"Ajoute le client au pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant)."},{"id":"text-128","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.join (&#39;chambre 237&#39;, () =&gt;     laisser chambres = Objet.keys (socket.rooms);    console.log (chambres);                 io.to (&#39;chambre 237&#39;).émettre(&quot;un nouvel utilisateur a rejoint la salle&quot;)         ););"},{"id":"text-129","heading":"Text","content":"Les mécanismes de jonction des salles sont gérés par le Adaptateur qui a été configuré (voir Adaptateur # serveur ci-dessus), par défaut sur socket.io-adaptateur.\nPour votre commodité, chaque socket rejoint automatiquement une pièce identifiée par son identifiant (voir Socket # id). Cela facilite la diffusion de messages vers d&#39;autres sockets:"},{"id":"text-130","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;dire à quelqu&#39;un&#39;, (id, msg) =&gt;                     socket.to (id) .emit (&#39;mon message&#39;, msg);        ););"},{"id":"text-131","heading":"Text","content":"socket.join (chambres[, callback])"},{"id":"text-132","heading":"Text","content":"pièces (Tableau)\nrappeler (Une fonction)\nRésultats Prise pour chaîner"},{"id":"text-133","heading":"Text","content":"Ajoute le client à la liste des salles et déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nsocket.leave (room[, callback])"},{"id":"text-134","heading":"Text","content":"pièce (Chaîne)\nrappeler (Une fonction)\nRésultats Prise pour chaîner"},{"id":"text-135","heading":"Text","content":"Supprime le client de pièceet déclenche éventuellement un rappel avec se tromper signature (le cas échéant).\nLes chambres sont laissées automatiquement lors de la déconnexion.\nsocket.to (salle)"},{"id":"text-136","heading":"Text","content":"pièce (Chaîne)\nRésultats Prise pour chaîner"},{"id":"text-137","heading":"Text","content":"Définit un modificateur pour une émission d&#39;événement ultérieure que l&#39;événement sera uniquement diffusé aux clients qui ont rejoint le donné pièce (la prise elle-même étant exclue).\nPour émettre dans plusieurs pièces, vous pouvez appeler à plusieurs fois."},{"id":"text-138","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;           socket.to (&#39;autres&#39;).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; );          socket.to (&#39;room1&#39;).à(&#39;room2&#39;).émettre(&#39;Bonjour&#39;)          socket.to (). emit (&#39;Hey&#39;)    );"},{"id":"text-139","heading":"Text","content":"Remarque: les accusés de réception ne sont pas pris en charge lors de la diffusion.\nsocket.in (salle)\nSynonyme de socket.to (salle).\nsocket.compress (valeur)"},{"id":"text-140","heading":"Text","content":"valeur (Booléen) si le paquet suivant sera compressé\nRésultats Prise pour chaîner"},{"id":"text-141","heading":"Text","content":"Définit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement comprimé si la valeur est vrai. Par défaut à vrai lorsque vous n&#39;appelez pas la méthode."},{"id":"text-142","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.compress (faux).émettre(&#39;non compressé&#39;, &quot;c&#39;est rugueux&quot;));"},{"id":"text-143","heading":"Text","content":"socket.disconnect (close)"},{"id":"text-144","heading":"Text","content":"Fermer (Booléen) s&#39;il faut fermer la connexion sous-jacente\nRésultats Prise"},{"id":"text-145","heading":"Text","content":"Déconnecte ce client. Si la valeur de fermeture est vrai, ferme la connexion sous-jacente. Sinon, il ne fait que déconnecter l&#39;espace de noms."},{"id":"text-146","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         setTimeout (() =&gt; socket.disconnect (vrai), 5000));"},{"id":"text-147","heading":"Text","content":"Drapeau: ‘broadcast’\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement seront uniquement diffuser à tous les sockets, mais l&#39;expéditeur."},{"id":"text-148","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.broadcast.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );"},{"id":"text-149","heading":"Text","content":"Drapeau: «volatile»\nDéfinit un modificateur pour une émission d&#39;événement ultérieure selon laquelle les données d&#39;événement peuvent être perdues si le client n&#39;est pas prêt à recevoir des messages (en raison de la lenteur du réseau ou d&#39;autres problèmes, ou parce qu&#39;ils sont connectés au cours d&#39;une longue interrogation et qu&#39;ils sont au milieu d&#39;une demande. cycle de réponse)."},{"id":"text-150","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.volatile.emit (&#39;un évènement&#39; certains: &#39;Les données&#39; ); );"},{"id":"text-151","heading":"Text","content":"Drapeau: «binaire»\nSpécifie s&#39;il existe des données binaires dans les données émises. Augmente les performances lorsque spécifié. Peut être vrai ou faux."},{"id":"text-152","heading":"Text","content":"var io = exiger(&#39;socket.io&#39;) ();io.on (&#39;lien&#39;, une fonction(prise)        socket.binary (faux).émettre(&#39;un évènement&#39; certains: &#39;Les données&#39; ); );"},{"id":"text-153","heading":"Text","content":"Evénement: &quot;déconnecter&quot;"},{"id":"text-154","heading":"Text","content":"raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)"},{"id":"text-155","heading":"Text","content":"Tiré lors de la déconnexion."},{"id":"text-156","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;             ););"},{"id":"text-157","heading":"Text","content":"Raisons possibles:"},{"id":"text-158","heading":"Text","content":"Raison\nCôté\nLa description"},{"id":"text-159","heading":"Text","content":"erreur de transport\nDu côté serveur\nErreur de transport"},{"id":"text-160","heading":"Text","content":"Déconnexion de l&#39;espace de noms du serveur\nDu côté serveur\nLe serveur effectue un socket.disconnect ()"},{"id":"text-161","heading":"Text","content":"déconnexion de l&#39;espace de noms du client\nCôté client\nVous avez déconnecté le paquet du client"},{"id":"text-162","heading":"Text","content":"ping timeout\nCôté client\nLe client a cessé de répondre aux pings dans le délai imparti (selon le pingTimeout réglage de configuration)"},{"id":"text-163","heading":"Text","content":"transport à proximité\nCôté client\nLe client a cessé d&#39;envoyer des données"},{"id":"text-164","heading":"Text","content":"Evénement: ‘erreur’"},{"id":"text-165","heading":"Text","content":"Erreur (Objet) objet d&#39;erreur"},{"id":"text-166","heading":"Text","content":"Déclenché lorsqu&#39;une erreur survient."},{"id":"text-167","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;Erreur&#39;, (erreur) =&gt;             ););"},{"id":"text-168","heading":"Text","content":"Evénement: &quot;déconnexion&quot;"},{"id":"text-169","heading":"Text","content":"raison (Chaîne) la raison de la déconnexion (côté client ou côté serveur)"},{"id":"text-170","heading":"Text","content":"Se déclenche lorsque le client va être déconnecté (mais n’a pas quitté son pièces encore)."},{"id":"text-171","heading":"Text","content":"io.on (&#39;lien&#39;, (socket) =&gt;         socket.on (&#39;déconnecter&#39;, (raison) =&gt;     laisser chambres = Objet.keys (socket.rooms);            ););"},{"id":"text-172","heading":"Text","content":"Ce sont des événements réservés (avec relier, nouveauListener et removeListener) qui ne peuvent pas être utilisés comme noms d’événements.\nle Client La classe représente une connexion de transport entrant (engine.io). UNE Client peut être associé à de nombreux multiplexés Prises qui appartiennent à différents Espace de nomss.\nclient.conn\nUne référence au sous-jacent moteur.io Prise lien.\nclient.request\nUn proxy getter qui renvoie la référence à la demande qui est à l&#39;origine de la connexion engine.io. Utile pour accéder aux en-têtes de requête tels que Biscuit ou Agent utilisateur."},{"id":"text-173","heading":"Text","content":"Pris une erreur? Éditez cette page sur GitHub"},{"id":"text-174","heading":"Text","content":"Click to rate this post!\n                                   \n                               [Total: 0  Average: 0]"}],"media":{"primary_image":""},"relations":[{"rel":"canonical","href":"https://tutos-gameserver.fr/2019/06/14/socket-io-api-de-serveur-socket-io-monter-un-serveur-minecraft/"},{"rel":"alternate","href":"https://tutos-gameserver.fr/2019/06/14/socket-io-api-de-serveur-socket-io-monter-un-serveur-minecraft/llm","type":"text/html"},{"rel":"alternate","href":"https://tutos-gameserver.fr/2019/06/14/socket-io-api-de-serveur-socket-io-monter-un-serveur-minecraft/llm.json","type":"application/json"},{"rel":"llm-manifest","href":"https://tutos-gameserver.fr/llm-endpoints-manifest.json","type":"application/json"}],"http_headers":{"X-LLM-Friendly":"1","X-LLM-Schema":"1.1.0","Content-Security-Policy":"default-src 'none'; img-src * data:; style-src 'unsafe-inline'"},"license":"CC BY-ND 4.0","attribution_required":true,"allow_cors":false}