Kod pelayan.js sebelah pelayan
var express=require("express");
var http=require("http");
var sio=require("socket.io");
var app=express();
var server=http.createServer(app);
var fs=require("fs");
app.get("/", fungsi (req,res) {
res.sendfile(__dirname "/index.html");
});
server.listen(1337);
var socket=sio.listen(server);
socket.on("sambungan", fungsi (soket) {
socket.emit("berita",{hello:"Hello"});
socket.on("otherEvent", fungsi (data) {
console.log("Data diterima pelayan: %j",data);
})
});
Kod index.html pelanggan
var socket=io.connect();
socket.on("berita", fungsi (data) {
console.log(data.hello);
socket.emit("otherEvent",{my:"data"});
});
Persoalan tiba-tiba timbul kepada saya Bolehkah saya menulis kod pemantauan untuk berita yang sama dengan yang dipancarkan?
Dengan cara ini:
var express=require("express");
var http=require("http");
var sio=require("socket.io");
var app=express();
var server=http.createServer(app);
app.get("/", fungsi (req,res) {
res.sendfile(__dirname "/index.html");
});
server.listen(1337,"127.0.0.1", fungsi () {
console.log("Mulakan pemantauan 1337");
});
var socket=sio.listen(server);
socket.on("sambungan", fungsi (soket) {
socket.on("berita", fungsi (data) {
console.log(data.hello);
});
socket.emit("berita",{hello:"Hello"});
});
Perhatikan 15~17 baris kod: ia baru ditambahkan oleh kami.
Fakta membuktikan bahawa ia tidak mungkin, tidak akan ada cetakan Tetapi ia tidak akan melaporkan ralat juga.
Pelaksanaan pancaran secara eufemisme dipanggil: menghantar acara Jika terdapat parameter, ia secara eufemisme dipanggil: membawa parameter.
Posskrip:
Saya juga mendapati banyak maklumat tentang kaedah panggilan sesi dalam rangka kerja Ekspres di Internet, tetapi saya mendapati bahawa tidak banyak daripada mereka sebenarnya berguna Artikel ini berdasarkan proses pengeluaran projek saya sendiri, dan disusun kaedah khusus menggunakan sesi dalam Ekspres dan soket.IO.