被一个 IP 获取坑了好久

2022-06-10 · 周五一般中雨

今天的工作基本上就是随便整整,改改测试留下的反馈,修修 🐶🐶ro 的一些参数,需要后端配合调整的地方他那边没弄好我也就搁着了。

晚上心血来潮想弄下「保罗 API Next」的 IP 地理位置获取功能,依旧是反代了一个公开使用的接口作为数据来源,后期整合到「小窝后台」里面,方便进行查阅。

期间我首先查到的是 ctx.response.ip 这个属性,一番调试后发现它始终返回 127.0.0.1,我起初认为可能是直接使用电脑访问所致,想看看能不能借助局域网的其他设备进行调试。打开手机之后发现一直无法访问,我关闭了 MacOS 的防火墙,结果依旧不行!

于是就想着在其他设备上配置一次项目试试看,先是在我的国内测试机上弄了,由于本身是 Nginx 代理的,这种情况可以使用 ctx.headers["x-forwarded-for"] 这种方式读取真实 IP,而本地环境下依旧无法测试,就上了我的 Windows 笔记本。装 NPM 包的过程磕磕绊绊,国内网络环境真的难受,搞了半个多小时还是没弄好,开着全局模式,终端貌似也无法走代理,不像 MacOS 和 Linux 那样一句命令那么方便。

最后发现貌似是 Vite 的启动参数配置问题,需要带上 --host 才可以在局域网内访问,而 MidwayJS 是 Koa 和 Vite 的缝合怪,就按照了 Koa 的模式打印出了局域网访问地址,结果实际上是并不能正常访问的,我认为这也许是一个不太合适的设定。

这下终于是能在局域网环境下访问了,可最前面提到的那个属性依旧返回 127.0.0.1,我麻了。虽说上线问题不大,但总感觉这是一个潜在的问题,是个坑,先留个记录,看看之后能不能把它彻底解决吧==

关于这个话题,《Node.js 安全攻防 - 如何伪造和获取用户真实 IP 》这篇文章讲述的不错,先记录下。

Paul

Paul

特立独行的一只前端菜狗。这篇日记编写大概耗时了 0 分钟,内容均为个人原创,并采用 CC BY-NC-SA 4.0 授权协议,转载请注明来源,谢谢!如本站内容对你有所帮助的话,不妨 捐助支持 一下?

近期评论

鲍小螺: 前辈多多指教!ahu: 后生可畏寻梦xunm: 真不错,板子很好看。timochan: 太惨了( ,更新暴毙,如果恢复没成功,数据也 dump 不出来鲍小螺: 在这部分对话中,广树和保罗继续讨论生活的不同方面。保罗提到了技术更新和国内的优秀 IT 技术。广树解释了在国内积累的经验如何在日本产生穿越的感觉,并表达了对于日本生活节奏的喜爱。他还提到了医疗水平的差异和对于生活方式的感受。保罗表示,通过动漫和现实的对比,艺术来源于现实,日本生活的确有着独特之处。他们讨论了国内的生活节奏和就医等方面的压力,以及个人选择的自由。最后,他们也谈到了不结婚不买房的选择和对于房价的困扰。鲍小螺: 该对话进一步讨论了房地产和税收的问题。保罗提到了国内的房地产税和增值税以及日本的固定资产税。广树解释了日本房地产税的收取方式,以及房产税对于国内房产的影响。他认为,与国内相比,日本的房子质量和服务更好。保罗提出疑问,为什么自己拥有的地也要交税。广树解释了类似增值税的原理,并指出在日本拥有房产是稳定安全的。最后,保罗表示从广树的角度来看,情况确实是如此。鲍小螺: 这篇文章的聊天记录也尝试过用 GPT 总结,结果并不是太好,不知道是不是 Prompt 的问题,实际出来的内容过于简练了,于是又耗费了半小时写完,呼~
奇趣音乐盒技术源于 Kico Player
Emmm,这里是歌词君