zoukankan      html  css  js  c++  java
  • socket.io获取客户端的IP地址(修正官方1.0.4版本BUG)

    之前我有看过别人写的文章,说到如何获取客户端IP地址,代码如下:

    var io = require("socket.io").listen(server);
    io.sockets.on("connection", function (socket) { 
           var address = socket.handshake.address; 
            console.log("New connection from " + address.address + ":" + address.port);
    });

    这是在0.9.x版本是可以正确获取到客户端IP地址的。

    但是当你使用1.0.4版本的时候发现获取到的IP地址是本地服务器绑定的IP.

    查过官方的API文档但是没有介绍关于IP地址如何获取的。所以只好自己修改源码了。

    ===================================================
    现在修改socket.io的模块源码以获取真实IP地址,并保留原有代码的兼容性。

     打开/node_modules/socket.io/lib/socket.js文件

     在110行找到代码

    address: this.request.connection.address(),

    修改为

    address: {'address':this.request.connection.remoteAddress,'port':this.request.connection.remotePort},

    只要改一个文件,然后重启node,就可以用了。

    飞儿传媒www.firadio.com
  • 相关阅读:
    OCP-1Z0-052-V8.02-116题
    OCP-1Z0-052-V8.02-6题
    OCP-1Z0-052-V8.02-5题
    使用rman恢复控制文件
    Matlab-质点的运动
    Matlab中checkerboard-创建棋盘图像(二)
    OCP-1Z0-052-V8.02-4题
    OCP-1Z0-052-V8.02-3题
    Matlab中checkerboard-创建棋盘图像(一)
    OCP-1Z0-052-V8.02-1题
  • 原文地址:https://www.cnblogs.com/firadio/p/3787838.html
Copyright © 2011-2022 走看看