|<- [[Broadcasting messages with WebSockets]]|[[Testing with mocha and Chai]] ->|
Le support pour les websockets est bon, mais pas dans les vieux navigateurs comme < IE10. -> canisuse.com/#search=websockets
-> socket.io : module avec son propre serveur et client -> fallback de websockets vers long polling quand websockets non supportées.
-> npm install socket.io --save
var express = require("express");
var http = require("http");
var app = express();
var server = http.createServer(app).listen(3000); // on créé un serveur http basé sur l'app express
var io = require("socket.io")(server); // on envoie au constructeur avec en paramètre le server créé avant
app.use(express.static("./public"));
io.on("connection", function(socket) {
socket.on("chat", function(message) {
socket.broadcast.emit("message", message),
});
socket.emit("message", "welcome to the chat");
});
console.log("starting socket App - http://localhost:3000");
-> npm install socket.io-client --save
var socket = io("http://localhost:3000");
socket.on("disconnect", function() {
setTitle("Disconnected");
});
socket.on("connect", function() {
setTitle("Connected to the chat");
});
socket.on("message", function(message) {
printMessage(message);
});
(...)