首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在nestjs中获取客户端ip

如何在nestjs中获取客户端ip
EN

Stack Overflow用户
提问于 2022-08-26 02:28:54
回答 1查看 629关注 0票数 0

我想要一个ip来记录用户登录。

我试过nestjs-real-ip@Ip()

我试着通过手机和个人电脑浏览器登录,

但他们都展示了:::1。我怎样才能得到客户的真实知识产权?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-08-26 04:22:25

:::1是ipv6中的回送地址,等于ipv4中的127.0.0.1。您可以看到该地址,因为您试图在本地访问本地主机。这就是你的浏览器向你展示它的方式。

如果您要通过IP访问服务器并尝试使用curl进行测试,您可能会看到其他内容,例如:

代码语言:javascript
运行
复制
curl localhost:3000/ip
::ffff:127.0.0.1

代码语言:javascript
运行
复制
curl 174.38.167.56:3000/ip
::ffff:174.38.167.56

如果您想了解更多关于ffff前缀的信息,here

顺便说一句-你不需要任何额外的图书馆。request.ip会给你同样的答案。这里有一个片段:

代码语言:javascript
运行
复制
import { Controller, Get, Req } from '@nestjs/common';
import { Request } from 'express';

@Controller('ip')
export class IpController {
    @Get()
    getIpAddressFromRequest(@Req() request: Request): string {
        return request.ip;
    }
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73495506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档