所以我想创建一个特殊的命名空间,管理员可以在其中审核每个其他用户。
但是,我找不到获得命名空间的正确方法。
我最接近的是使用=("assign wire_"&N5&" = 4'b"&TEXT(O5, "0000000")&";")
给了我socket.handshake.headers.referer
,但我发现它很难看,并且猜测有更好的选择。
答案 0 :(得分:0)
在服务器端,您可以在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>