net/http库中request.RemoteAddr的值不确定性-【Golang踩坑笔记】

环境信息:

  • Go 1.20
  • Windows 11 x64

代码示例

Go 复制代码
// 这里的r是框架传入的request,其中封装了net/http下的request.go中的Request
fmt.Println("r.RemoteAddr:", r.RemoteAddr)  // 本地执行时,该值可能是[::1]:port也可能是127.0.0.1:port

当在本地测试请求时,他的返回结果可能是::1:port也可能是127.0.0.1:port。期间热重载或重启程序也可能会改变他的值

时间有限测试的情况不多但它确实是不确定的,并且这不是一个BUG。 官方的回复表示这是按预期工作的

一般我踩坑笔记都不会发文章,但这个设定我个人认为有些不合理,可能是我接触的包比较少,对于这种情况,是否需要对两种相同意义但是不同内容的值做判定。

相关推荐
光影6272 小时前
MySQL基础入门
数据库·笔记·sql·学习·mysql·学习方法
光影6272 小时前
MySQL 进阶篇 —— 事务 / 外键 / 索引 / 高级查询
数据库·笔记·sql·学习·mysql
ControlRookie3 小时前
输入一个 URL 以后,一次 HTTP 事务经历了什么
http·工业通信·codesys·工业自动化·plc通信
晴雨天️3 小时前
Git工具使用指南
笔记·git
醉城夜风~4 小时前
MyBatis 基础CRUD全套实战学习笔记
笔记·学习·mybatis
hj2862514 小时前
Shell 脚本完整学习笔记
chrome·笔记·学习
智者知已应修善业4 小时前
【proteus交通灯故障检测的完善方案】2025-4-29
经验分享·笔记·单片机·嵌入式硬件·proteus
码片向量4 小时前
状态空间模型SSM学习笔记
笔记·学习·ssm·语音增强·状态空间
Wzx1980124 小时前
RAG优化:17中RAG优化方案,那种才是最佳选择?
golang
李燚5 小时前
Graph 执行引擎源码:Eino 的节点调度是怎么工作的(第56篇-E42)
golang·ai编程·graph·agent框架·eino