Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Koajs/nodejs获取IP地址请求-仅返回本地主机地址_Javascript_Node.js_Express_Ip_Localhost - Fatal编程技术网

Javascript Koajs/nodejs获取IP地址请求-仅返回本地主机地址

Javascript Koajs/nodejs获取IP地址请求-仅返回本地主机地址,javascript,node.js,express,ip,localhost,Javascript,Node.js,Express,Ip,Localhost,我已经尝试了一段时间使用Koajs获取客户机(me)的ip地址;但是,我一直在获取::1的本地主机地址 我尝试使用this.request.ip和this.request.headers['x-forwarded-for']并将app.proxy设置为true,但仍然获得任意本地主机ip 我确实需要我正在构建的地理定位应用程序的IP地址 这是我的密码: var koa = require('koa'); var app = koa(); app.proxy = true; app.use(

我已经尝试了一段时间使用Koajs获取客户机(me)的ip地址;但是,我一直在获取::1的本地主机地址

我尝试使用this.request.ip和this.request.headers['x-forwarded-for']并将app.proxy设置为true,但仍然获得任意本地主机ip

我确实需要我正在构建的地理定位应用程序的IP地址

这是我的密码:

var koa = require('koa');
var app = koa();

app.proxy = true;


app.use(function *(){
    this.body = this.request.ip; // also tried request.headers['x-forwarded-for'];
});

 app.listen(3000);
试着换成

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

您是否从承载站点的同一台计算机访问此站点?如果是这样,那么获取本地主机地址是有意义的。请求来自哪里?您是否在同一台机器上同时运行服务器和客户端?@eandersson是的,我是。行“app.listen(3000)”允许我在上运行应用程序,我只希望它以xx.xxx.xxx.xx的形式打印我的ip地址,而this.body=this.request.ip;打印::1,这是任意本地主机地址,因此您需要IPv4本地主机地址,即
127.0.0.1
,而不是IPv6本地主机地址
::1
?然后在客户端中尝试显式连接到
127.0.0.1:3000
,否则客户端将在
localhost
的别名列表中选择第一个(在您的情况下,显然是IPv6地址)。