如何从请求中获取客户端的ip?
How to get the client's ip from the request?
我想在发出请求时获取客户端的 ip 地址
但我总是得到相同的结果:
::1
如何准确获取客户端的ip地址,我从不同的设备发出请求,结果都是一样的
@Get(':id')
async get(@Req() request: Request, @Param('id') id: string) {
console.log(request.ip);
return this.adService.findOne({ id });
}
请求object包含一个名为socket
的属性,实际上是一个net.Socket
object。这个 object 有一个 remoteAddress
属性 保存调用的 IP 地址。
request.socket.remoteAddress
另请注意,如果服务器在代理后面,您应该使用请求 headers request.headers['x-forwarded-for']
我想在发出请求时获取客户端的 ip 地址
但我总是得到相同的结果:
::1
如何准确获取客户端的ip地址,我从不同的设备发出请求,结果都是一样的
@Get(':id')
async get(@Req() request: Request, @Param('id') id: string) {
console.log(request.ip);
return this.adService.findOne({ id });
}
请求object包含一个名为socket
的属性,实际上是一个net.Socket
object。这个 object 有一个 remoteAddress
属性 保存调用的 IP 地址。
request.socket.remoteAddress
另请注意,如果服务器在代理后面,您应该使用请求 headers request.headers['x-forwarded-for']