2015-10-20 54 views
1

我在nodejs中创建了应用程序并部署在IIS上 我无法获得客户端。 我已经尝试了很多模块和SO答案,但仍然没有用。如何在IIS上的nodeJS中获取客户端ip

服务器代码

var express = require('express'); 
var app = express(); 
var requestIp = require('request-ip'); 
var ip = require("ip"); 

var get_ip = require('ipware')().get_ip; 


//app.enable('trust proxy'); 
app.get('/', function(req, res) { 
    var op = { 
     op: [ 
      req.headers["X-Forwarded-For"], 
      req.headers["x-forwarded-for"], 
      req.client.remoteAddress, 
      ip.address(), 
      requestIp.getClientIp(req), 
      get_ip(req), 
      req.ip, 
      req.ips, 

      1122 //hard coded number. 
     ] 
    } 

    res.send(op); 
}); 

var server = app.listen(4000, function() { 


    var host = server.address().address; 
    var port = server.address().port; 

    console.log('Example app listening at http' + host + port); 
}); 

在IIS上部署,这是回答

 { 
     "op": [null, 
      null, 
      null, 
      "216.157.123.123", //server ip 
      null, 
      { "clientIp": "127.0.0.1", "clientIpRoutable": false }, 
      null, 
      [], 
      1122] 
    } 

做我需要配置IIS的东西。

回答