📅  最后修改于: 2023-12-03 15:33:09.950000             🧑  作者: Mango
socket.remoteAddress()
方法是 Node.js 中 Socket 类的一个属性,用于获取远程连接的 IP 地址。通过该方法,程序员可以获取到客户端连接的 IP 地址,从而获取相关的真实地理位置或者在服务器端做一些安全限制。
socket.remoteAddress()
该方法返回字符串类型的客户端 IP 地址,如果是 TCP 连接,则会返回链接的套接字的远程 IP 地址。如果是 UDP 数据报传输,则返回发送数据报的 IP 地址。
以下代码展示了如何使用 socket.remoteAddress()
方法来获取客户端的 IP 地址。
const net = require('net');
const server = net.createServer((socket) => {
console.log(`Client connected: ${socket.remoteAddress}`);
});
server.listen(8080, () => {
console.log('Server started on port 8080');
});
上述代码中,我们创建了一个 TCP 服务器,监听 8080 端口,并在连接事件中打印客户端的 IP 地址。在运行该代码后,当客户端通过命令 telnet server_ip_addr 8080
连接时,我们可以看到控制台输出类似如下的信息。
Client connected: 127.0.0.1
socket.remoteAddress()
方法前,请确保该方法所在的 socket 已经建立了连接,否则会得到 undefined
或者错误的 IP 地址。