Rumah  >  Artikel  >  hujung hadapan web  >  Menggunakan socket.io untuk mencipta ruang nama dalam node.js

Menggunakan socket.io untuk mencipta ruang nama dalam node.js

PHPz
PHPzasal
2016-05-16 16:27:011661semak imbas

Artikel ini terutamanya memperkenalkan penggunaan socket.io untuk mencipta ruang nama dalam nod Rakan yang memerlukan boleh merujuknya.

Jika pembangun ingin mengawal sepenuhnya penghantaran mesej dan acara dalam aplikasi tertentu, cukup menggunakan ruang nama "/" lalai Tetapi jika pembangun perlu menggunakan aplikasi itu sebagai yang ketiga Jika ketiga-. perkhidmatan pihak disediakan kepada aplikasi lain, anda perlu menentukan ruang nama bebas untuk port soket yang digunakan untuk menyambung kepada pelanggan

Buat dua ruang nama

sembang dan berita. kemudian hantar mesej antara satu sama lain di pihak pelanggan.

var express=require("express");
var http=require("http");
var sio=require("socket.io");
var app=express();
var server=http.createServer(app);
app.get("/", function (req,res) {
    res.sendfile(__dirname+"/index.html");
});
server.listen(1337,"127.0.0.1", function () {
    console.log("开始监听1337");
});
var io=sio.listen(server);
var chart=io.of("/chat").on("connection", function (socket) {
    socket.send("欢迎访问chat空间!");
    socket.on("message", function (msg) {
        console.log("chat命名空间接收到信息:"+msg);
    });
});
var news=io.of("/news").on("connection", function (socket) {
    socket.emit("send message","欢迎访问news空间!");
    socket.on("send message", function (data) {
       console.log("news命名空间接受到send message事件,数据为:"+data);
    });
});

Kod HTML:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title></title>
    <script src="/socket.io/socket.io.js"></script>
    <script>
        var chat=io.connect("http://localhost/chat"),
            news=io.connect("http://localhost/news");
        chat.on("connect", function () {
            chat.send("你好.");
            chat.on("message", function (msg) {
                console.log("从char空间接收到消息:"+msg);
            });
        });
        news.on("connect", function () {
            news.emit("send message","hello");
            news.on("send message", function (data) {
                console.log("从news命名空间接收到send message事件,数据位:"+data);
            });
        });
    </script>
</head>
<body>
</body>
</html>

Hasil jalankan:

Adakah anda semua memahami fungsi dalam node.js? Bagaimana untuk menggunakan socket.io untuk mencipta ruang nama? Dua contoh di sini adalah sangat mudah.

Cadangan berkaitan:

Di atas ialah keseluruhan kandungan bab ini , sila lawati Tutorial video Node.js!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn