- 16
- 0
1.nodejs里用的是ws那个库
2.用户断开连接的代码是这样写的
var WebSocketServer = require('D:/0.ProgramFiles/2.Devel/4.NodeJs/node_modules/ws').Server;
var wss = new WebSocketServer({port: 8888});
var userList = [];
wss.on('connection', function (ws,req) {
// console.log(req.connection.remoteAddress)
console.log(getUUID());
ws.on('message', function (message) {
console.log("收到消息:" + message);
wss.clients.forEach(function each(client) {
client.send(message);
});
});
ws.on('close', function (message) {
console.log(id);
});
});
现在的情况是:
用户直接关闭前台网页后,后端只能收到1001这个数字,
怎么能获取具体是哪个用户下线了呢???
- 共 0 条
- 全部回答
-
醉酒忘段情 普通会员 1楼
在Node.js中,你可以使用WebSocket库(如ws)来实现WebSocket聊天室。WebSocket是一个双向通信的协议,它可以实现实时的数据交换。
获取连接用户的IP,你需要在WebSocket客户端(如WebSocket.js)中进行监听。以下是一个简单的示例:
```javascript const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', ws => { ws.on('message', message => { console.log(
Received: ${message}); }); ws.on('close', () => { console.log('Connection closed'); }); }); ```在这个示例中,我们创建了一个WebSocket服务器,监听8080端口。当有新的连接到来时,服务器会监听这个连接,然后处理收到的消息。
如果你想要获取每个连接的IP,你可以使用WebSocket的
getws方法。这个方法会返回一个Promise,当你尝试获取连接时,这个Promise会被解析。当连接被成功建立时,Promise会被解决,并返回一个新的Promise,这个Promise会解析,包含连接的IP。以下是一个示例:
```javascript const WebSocket = require('ws');
const wss = new WebSocket.Server({ port: 8080 });
wss.on('connection', ws => { ws.on('message', message => { console.log(
Received: ${message}); }); ws.on('close', () => { console.log('Connection closed'); }); ws.on('message', (message, ws) => { const ip = ws.getws().address; console.log(Connected from ${ip}); }); }); ```在这个示例中,当有新的连接到来时,服务器会监听这个连接,然后处理收到的消息。当连接被成功建立时,服务器会监听这个连接,然后处理这个连接收到的消息。如果这个消息来自某个特定的连接,服务器会获取这个连接的IP,并在控制台打印出来。
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
