使用 ngrok 进行隧道传输时如何获取请求的真实客户端 IP

2024-02-27

如何确保客户端IP地址被ngrok转发?

由于 ngrok,我的测试代码一直坚持所有请求都来自 127.0.0.1,但我想记录实际的客户端 IP。负载均衡器通常在 X-Forwarded-For 或 x-real-ip 中设置标头,但我不确定 ngrok 的过程是什么......

  console.log('req.headers[\'x-real-ip\']', req.headers['x-real-ip']);
  console.log('req.headers[\'X-Forwarded-For\']', req.headers['X-Forwarded-For']);
  console.log('req.ip', req.ip );
  console.log('req.connection.remoteAddress', req.connection.remoteAddress);
  console.log('req.connection.remoteAddress', req.connection.remoteAddress);
  console.log('req.socket.remoteAddress', (req.socket && req.socket.remoteAddress));
  console.log('req.socket.socket.remoteAddress', (req.socket.socket && req.socket.socket.remoteAddress));

一切都打印undefined or 127.0.0.1迄今为止。我认为这意味着我需要以某种方式配置 ngrok。


不幸的是,Node.JS 中的所有标头名称都是小写的。使用

req.headers['x-forwarded-for']

代替

req.headers['X-Forwarded-For']
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ngrok 进行隧道传输时如何获取请求的真实客户端 IP 的相关文章

  • 基于docker搭建ngrok私服

    经常开发微信的同学们 肯定会经常用到内网穿透 大部分人选择网上寻找各种现成的 比如ngrok官网 natapp sunny ngrok或者花生壳之类的 但是世界上没有免费的午餐 要不就是收费 要不就是免费但是偶尔会出现连接失败的问题 当然大
  • [开发

    Ngrok是一个开源的 跨平台的 用于将本地服务器 如Web服务器 映射到公共Internet上的工具 它允许你在没有公共IP地址或域名的情况下 将你本地开发环境暴露给其他人 方便测试 演示和与他人共享工作进展 官网地址 官方文档 官方下载
  • ngrok实现内网穿透,让家里的笔记本也能做服务器

    背景 家里淘汰了一台笔记本 windows系统装起来很卡 于是装了个linux系统 这台笔记本有2G内存 奔腾双核处理器 配置比我在阿里云上买的ECS高多了 于是想着给它利用起来 研究了一下 发现ngrok内网穿透能实现这个功能 刚好我也有
  • ngrok服务实现内网穿透

    自建ngrok服务实现内网穿透 名词解释 内网穿透 又叫NAT穿透 是计算机用语 翻译过来就是你的电脑可以直接被你朋友访问 通常我们的电脑是无法自己被访问的 因为我们的电脑缺少自己的独立的ip地址 现在ip稀缺 电信运营商已经不会随便分配固
  • docker + ngrok + nginx内网穿透访问本地,方便本地调试

    ngrok客户端生成 docker run rm it e DOMAIN jiadays com v root ngrok myfiles hteen ngrok bin sh build sh 对应生成的目录 bin ngrokd 服务端
  • 微信公众号开发本地调试方法

    前言 这几天一直想搞个公众号玩一玩 然后去阿里云买了个云服务器ECS 学生9 9 月 因为一开始接触云服务器 所以选了个window系统 然后在本地创建了一个简单的web项目 jyc 用来认证token 在云服务器里面搭了JDK和tomca
  • 如何将 ngrok 与 Google Oauth 结合使用?

    我最近安装了 Ngrok 以便在手机上测试我的本地主机流星应用程序 我成功通过 ngrok 的隧道访问流星应用程序 但是 当我尝试使用登录时 我收到此错误消息 登录过程显示以下错误消息 400 That s an error Error r
  • 如何通过ngrok访问子域?

    我有一个带有 api 子域的 Rails 站点 我本地机器上的路由如下所示 http mysite dev lt normal web stuff http api mysite dev lt my api 如何映射这两个子域 这是我的 n
  • 我是否必须使用 ngrok 来公开 MERN 堆栈的前端和后端才能使 CRUD 操作正常工作?

    我正在本地计算机上开发 MERN 应用程序 前端位于 localhost 3000 后端位于 localhost 3003 我的前端代码中有一个请求 如下所示 axios get localhost 3000 comments params
  • 使用 ngrok 在 Teams 中测试机器人功能

    我正在使用 Bot Framework 和 Azure for Microsoft Teams 开发一个机器人 并且我将使用 ngrok 直接在 MS Teams 中开发和测试我的代码 在机器人的设置中 我已将消息端点设置为从 ngrok
  • Rails:在 process_action 回调之前:authenticate_user!尚未定义

    我正在创建一个包含设计的 Rails 应用程序 我正在尝试使用 Ngrok 将 Twilio 消息传递添加到我的网站 我使用了本教程 https www twilio com blog 2016 04 receive and reply t
  • 第三方重定向后,Django request.user 变为 AnonymousUser

    测试 html a href authorize a 视图 py from django contrib auth decorators import login required login required def myview req
  • 使用flask-ask 和 ngrok 进行 Alexa 技能开发

    我正在尝试使用 python 中的flask ask 和 ngrok 开始开发 Alexa 的技能 以下是我的代码 from flask import Flask from flask ask import Ask statement qu
  • 如何在 OS X El Capitan 上安装 ngrok?

    首先 我尝试从网站下载 ngrok stable darwin amd64 zip 当我尝试通过终端解压缩时 我得到 Archive Users User Downloads ngrok stable darwin amd64 zip En
  • 如何使用 ngrok 托管 HTML 文件?

    是否可以使用 NGROK 托管 HTML 文件 而不是 Web 应用程序 我真的对 NGROK 一无所知 我只是用它来托管 Twilio 应用程序的服务器 并且想用它来托管我的另一个项目的 HTML 文件 另外 有人知道如何在 Mac 上创
  • 使用 ngrok 进行隧道传输时如何获取请求的真实客户端 IP

    如何确保客户端IP地址被ngrok转发 由于 ngrok 我的测试代码一直坚持所有请求都来自 127 0 0 1 但我想记录实际的客户端 IP 负载均衡器通常在 X Forwarded For 或 x real ip 中设置标头 但我不确定
  • 使用 Rails 测试 PayPal

    我需要测试新的 PayPal 与我的应用程序的集成 我在开发环境中使用 PayPal 沙箱 为了测试整个界面 我发现ngrok https ngrok com 可能会解决来自 PayPal 的消息问题 我使用安装了 ngrokapt get
  • Node.js,基于套接字 io 的一对一聊天引擎在本地工作正常,但在使用 ngrok 在不同笔记本电脑上运行时无法工作

    我正在一个聊天服务器上工作 它在本地工作正常 但每当我尝试使用 ngrok 运行该项目时 我和我的朋友就无法聊天 var socket io http localhost 7777 query username 谁能指导我如何将其公开 因为
  • 在后台运行时查看随机 ngrok URL

    当我启动 ngrok 客户端时 ngrok tcp 22它在前台运行 我可以看到随机生成的转发URL 例如tcp 0 tcp ngrok io 12345 gt localhost 22 如果我在后台运行 ngrok tcp 我找不到任何方
  • 无法通过 ngrok ssh 进入远程 Linux

    远程Linux计算机位于内部网络中 没有公共IP地址 所以我安装了ngrok ngrok tcp 22 ngrok by inconshreveable Ctrl C 退出 在线隧道状态版本2 0 19 2 0 17网页界面http 127

随机推荐

  • Java 8 列表到嵌套映射

    我有一个班级名单A like class A private Integer keyA private Integer keyB private String text 我要转让aList嵌套Map映射于keyA and keyB 所以我创
  • 正则表达式的金钱

    I have asp TextBox保持货币价值 即 1000 1000 0 和 1000 00 由于俄罗斯标准 逗号是分隔符 What ValidationExpression我要使用适当的asp RegularExpressionVal
  • 如何指定 RTL 特定的可绘制对象

    我有几张从右到左看起来不同的图像 是否可以创建 rtl 特定的可绘制目录或文件名的一些 rtl 后缀以自动加载相关图像 看起来像 ldrtl 后修复 从 17 级添加 仅适用于布局目录 现在回答这个问题已经很晚了 但我想分享一个我刚刚发现的
  • 有人用 VS2010 RTM 编译 OverviewMargin 吗?

    由于我严重上瘾岩石卷轴 http www hanselman com blog IntroducingRockScroll aspx 我正在寻找一个替代品 https stackoverflow com questions 2672277
  • 让Java文件传输更高效

    我有两台无线计算机连接到 N 个无线路由器 每台 PC 的连接速度都在 108 150Mbps 之间 理论上 在绝对最佳的条件下 我应该能够以 13 5MB s 到 18 75MB s 的速度传输 第一台计算机 正在发送 使用非常快的 SS
  • Android 模拟器上的低功耗蓝牙

    我研究了关于蓝牙低功耗 http developer android com guide topics connectivity bluetooth le html 但我没有支持 BLE 设备进行测试 因此 我想问 Android模拟器支持
  • 如何使用 JavaScript 将图像转换为 Base64 字符串?

    我需要将图像转换为 Base64 字符串 以便可以将图像发送到服务器 有没有相关的 JavaScript 文件 否则 我该如何转换它 您可以选择多种方法 1 方法 FileReader 通过以下方式将图像加载为 blobXMLHttp请求
  • 为什么弹性项目受限于父级尺寸?

    考虑以下示例 body margin 0 box sizing border box parent min height 100vh width 50vw margin 0 auto border 1px solid red display
  • 过滤传出 SignalR Core Hub 消息

    我正在使用 SignalR 和 Net 5 0 并利用集线器过滤器 https learn microsoft com en us aspnet core signalr hub filters view aspnetcore 5 0对我的
  • 如何使批处理文件删除它自己的目录?

    好吧 我很抱歉我对此很陌生 但我试图让我的批处理文件在启动后删除它自己的目录 这是我的文件夹的排列方式 Folder1 删除 bat 我的目标是让 delete bat 在启动 delete bat 后删除 Folder1 这是我的代码 r
  • 等待文件可写

    我正在开发一个将数据写入文件的工具 在某些时候 文件可能会被 锁定 并且在其他句柄关闭之前不可写入 我可以使用CreateFileAPI 处于循环状态 直到文件可用于写入访问 但我有两个问题使用CreateFile循环中 硬盘驱动器 缓存
  • 我们如何覆盖 navigator.getBattery()?

    我们正在编写一个 Chrome 扩展 当运行客户端代码的站点出于指纹识别原因检查电池电量时 该扩展会返回随机电池电量 站点可以使用的示例代码如下所示 navigator getBattery then function battery co
  • 使用实体框架 4.3 的过滤器加载导航属性

    几天前我放了一个question https stackoverflow com questions 11168505 auditing a table with ef code first关于映射两个类Message and Messag
  • 有效地使命令超时并将输出捕获到 bash 脚本中的变量

    我需要在 bash 脚本中运行一个命令 并在运行时间过长时终止它 我还需要捕获变量的所有输出 如果命令首先完成 我需要释放 终止看门狗进程 例如睡眠 因为我可能会运行此类命令的列表 不幸的是 超时 命令对我来说不可用 否则我可以这样做 ou
  • 如何以编程方式将 ViewController 转换为 UITableViewController

    我目前有一个MatchCenterViewController我想以编程方式将其转换为 UITableViewController 我尝试根据我找到的教程在下面这样做 但它似乎没有出现 MatchCenterViewController m
  • ASP.NET 表单身份验证 - 何时使用?

    我无法决定是否应该进行表单身份验证 表单身份验证通常用于个性化 即为已知用户定制内容 我没有这样的要求 我在数据库中有用户名和密码 需要根据数据库对用户进行身份验证吗 在 ASP NET 2 0 中实现相同目标的最佳推荐实践是什么 Form
  • Perl 相当于 PHP 的 get_file_contents()?

    下面的 PHP 代码正是我想要做的 问题是我需要在 Perl 中重新创建它 并且我一直在尝试open and sysopen Perl 可以运行 但不能执行 有人有任何帮助或知道任何可能有帮助的链接吗 谢谢 URL http example
  • UIWebView加载本地视频数据

    我正在尝试在 UIWebView 中加载视频 视频存储在本地文件系统中 这是我用于加载视频的代码片段 NSString filePAth NSBundle mainBundle pathForResource sample iPod ofT
  • EditText 中的 setHintTextColor()

    我的视图中有两个文本框 用户可以从同一屏幕上的另一个视图 通过对话框 选择文本颜色 因此 当用户通过对话框更改颜色时 我正在更改EditText文本及其提示 但是当有一些文本可用时EditText当用户选择其他颜色后 该文本将以该颜色出现
  • 使用 ngrok 进行隧道传输时如何获取请求的真实客户端 IP

    如何确保客户端IP地址被ngrok转发 由于 ngrok 我的测试代码一直坚持所有请求都来自 127 0 0 1 但我想记录实际的客户端 IP 负载均衡器通常在 X Forwarded For 或 x real ip 中设置标头 但我不确定