revel v1.0.0 的官方发版记录里,明确标注新增 samesite cookie 支持,同时把 go module 适配也纳入了这个版本的框架更新范围。对应的官方提交记录还说明,模块查找逻辑改成直接读取 app.conf 配置,还为路由错误处理新增了专属日志。版本页显示这个版本发布于2020年7月12日,这些调整都属于当时框架在依赖管理、浏览器cookie属性、运行诊断信息几个方向的迭代,别误当成近期刚推出的新更新。

来源:Revel 官方版本记录
支持 Go module 之后,项目就可以用 Go 原生的依赖管理能力来组织模块、设置版本约束了。Revel 的提交记录里特意提了,现在模块查找走的是 app.conf 里的配置,不再依赖之前的源码文件路径,这对老项目的配置迁移、模块加载路径都会产生实际影响。接入的时候一定要核对工程目录、配置文件和依赖版本,别只看到发版记录里写了“Go module support”,就默认任意旧项目不用调整就能直接构建。

来源:Revel 官方提交记录
SameSite 是 Cookie 的一个属性,浏览器会根据这个属性,决定跨站请求场景下的 Cookie 发送策略。框架加入这个支持后,应用就获得了自主配置该属性的能力,但实际能达到的安全效果,还要看应用本身的认证设计、Cookie 的其他配套属性、浏览器的实际行为和部署方式,不能觉得开了这个就等于有了完整的跨站请求防护。官方版本条目只确认了这个支持已经上线,并没有给出适配所有应用的统一配置值。
新增的路由错误日志主要是优化排查体验的,遇到请求未命中、配置异常这类问题时,日志能给开发者多提供一些排查线索,但查看的时候还是要结合应用的日志级别、部署端的日志采集规则和自定义错误处理代码一起分析。从早期版本升级的项目,建议分开验证 go.mod 构建、app.conf 模块配置、Cookie 行为、路由错误日志这几个点,别把几个不同层面的更新混在一起,直接得出“自动兼容”的结论。本文提到的内容全部来自2020年的v1.0.0发版记录,是否适配你正在用的目标分支,要再去查对应版本的官方说明确认。


















