node.js 获取外网IP

/**

 * 获取ip地址

 * @param  {HTTP Request} req http请求信息

 * @return {String}     ip地址

 */

function getIP(req) {

    var ip = null;

    if ( req.headers['x-forwarded-for'] ) {

        ip = req.headers['x-forwarded-for'];

    }

    else if ( req.headers['x-real-ip'] ) {

        ip = req.headers['x-real-ip'];

    }

    else if ( req.headers['remote_addr'] && req.headers['client_ip'] )

    {

        ip = req.headers['client_ip'];

    }

    else if ( req.headers['remote_addr'] )

    {

        ip = req.headers['remote_addr'];

    }

    else if ( req.headers['client_ip'] )

    {

        ip = req.headers['client_ip'];

    }

    else {

        return "0.0.0.0";

    }


    return ip;

};

你可能感兴趣的:(node.js)