0
私は管理者が他のすべてのユーザーを確認できる特殊な名前空間を作成したいと考えています。あなたはsocket.io> 1の名前空間をどうやって見つけますか?
しかし、私は名前空間を取得する適切な方法を見つけることができません。
最も近いのはでした。これは私にhttp://localhost:3000/admin
を与えましたが、私はそれが醜いと判断し、より良い選択肢があると思います。
私は管理者が他のすべてのユーザーを確認できる特殊な名前空間を作成したいと考えています。あなたはsocket.io> 1の名前空間をどうやって見つけますか?
しかし、私は名前空間を取得する適切な方法を見つけることができません。
最も近いのはでした。これは私にhttp://localhost:3000/admin
を与えましたが、私はそれが醜いと判断し、より良い選択肢があると思います。
サーバー側ではsocket.nsp.name
にあり、クライアント側ではsocket.nsp
にあります。
例:
server.js:
const express = require('express');
const app = express();
const http = require('http').Server(app);
const io = require('socket.io')(http);
app.use(express.static(__dirname+'/public'));
io.of('/some-namespace').on('connection', function (socket) {
console.log('a client connected to: ' + socket.nsp.name);
});
http.listen(3000, function(){
console.log('listening on *:3000');
});
公共/ index.htmlを
<!doctype html>
<html>
<head>
<title>Testing socket.io - custom namespace</title>
</head>
<body>
<h1 id="socketio"> not connected </h1>
<script src="socket.io/socket.io.js"></script>
<script>
var socket = io('/some-namespace');
socket.on('connect', function() {
document.getElementById("socketio").innerHTML = "connected to " +
socket.nsp;
});
</script>
</body>
</html>
あなたはmk12ok 'undefined' @ socket.nsp.name' – mk12ok
'でそれを見つけるだろう –