Utilisez socket.io pour créer un serveur socket.io. Cependant, le serveur dépend d'un serveur HTTP déjà créé.
Une fois le serveur HTTP en cours d'exécution, utilisez la méthode d'écoute pour attacher un serveur socket.io au serveur HTTP.
La copie de code est la suivante:
var sio = require ("scoket.io");
var socket = Sio.Listen (serveur);
Socket est un serveur socket.io créé sur le serveur.
Lorsque le client établit une connexion avec le serveur, l'événement de connexion du service socket.io est déclenché.
La copie de code est la suivante:
socket.on ("connexion", fonction (socket) {
});
Le paramètre de socket de la fonction de rappel est un objet de port de socket qui établit une connexion entre le serveur et le client.
Lorsqu'un message envoyé par le client est reçu, un événement de message de l'objet de port de socket est émis.
La copie de code est la suivante:
socket.on ("message", fonction (msg) {
});
Les paramètres de la fonction de rappel sont les messages envoyés par le client.
Vous pouvez utiliser Socket.Send (MSG) pour envoyer un message au client.
L'événement de déconnexion est déclenché lorsque la connexion côté client côté serveur est déconnectée.
La copie de code est la suivante:
socket.on ("déconnecter", funciton () {
});
Cette fonction de rappel n'applique aucun paramètre.
CODE SERVER SERVERS.JS:
La copie de code est la suivante:
var http = require ("http");
var sio = require ("socket.io");
var fs = require ("fs");
var server = http.createServer (fonction (req, res) {
res.writehead (200, {"Content-Type": "Text / Html"});
res.end (fs.readfilesYnc ("./ index.html"));
});
server.Listen (1337);
var socket = Sio.Listen (serveur);
socket.on ("connexion", fonction (socket) {
Console.log ("établissement de connexion client");
socket.send ("bonjour");
socket.on ("message", fonction (msg) {
console.log ("a reçu un message:" + msg);
});
socket.on ("déconnecter", fonction () {
console.log ("Client Disconnect.");
});
});
Créer le code Client index.html:
La copie de code est la suivante:
<! Doctype html>
<html>
<head lang = "en">
<meta charset = "utf-8">
<Title> </Title>
<script src = "/ socket.io/socket.io.js"> </ script>
<cript>
var socket = io.connect ();
socket.on ("message", fonction (data) {
console.log (données);
Socket.Send ("Message accepté.")
});
socket.on ("déconnecter", fonction () {
console.log ("Disconnect du côté serveur.");
});
</cript>
</ head>
<body>
</docy>
</html>
Ce code: /socket.io/socket.io.js est fourni avec la bibliothèque de classe Socket.io côté serveur, et il n'est pas nécessaire de placer un fichier socket.io.js sur le client.
Dans le fichier de script, utilisez d'abord la méthode io.connect () pour se connecter au serveur serveur Socket.io.
Cette méthode renvoie un objet de port de socket client qui établit une connexion au serveur.
Lorsqu'un message est reçu du serveur, l'événement de message de l'objet de port de socket client est déclenché.
La copie de code est la suivante:
socket.on ("message", fonction (msg) {
});
MSG est des données envoyées par le serveur;
Vous pouvez également utiliser la méthode Send () de l'objet Socket client pour envoyer des données au serveur.
La copie de code est la suivante:
Socket.Send (MSG);
Lorsque le serveur se déconnecte, l'événement de déconnexion de l'objet de port de socket client est déclenché.
La copie de code est la suivante:
socket.on ("déconnecter", fonction () {
})
Cette fonction de rappel n'utilise aucun paramètre.
Avis:
Le mécanisme de message du client est exactement le même que le mécanisme de traitement des messages côté serveur. Parce que Socket.io garantit que le client et le serveur partagent la même API.
Résultats après la course:
Lorsque le navigateur est fermé, la connexion au serveur est déconnectée. À l'heure actuelle, le serveur déclenche l'événement de déconnexion et le client déconnecte.