Go教程技术文章
-
Golang · Go教程 | 2个月前 | WEB开发 · go · 表单 · 用户体验 · html/template · 表单校验 html/template 无障碍 Go教程 字段错误 输入回填 aria-invalid
Go 的 html/template 表单校验失败时,重新渲染页面不等于只显示一行错误。本文用字段级错误、旧值回填、aria-invalid 和焦点定位,把一次失败提交收敛成可修复的交互。485 收藏 -
Go 服务的正则匹配突然占满 CPU,常见原因不是规则本身,而是每次请求都重新编译 regexp。本文用基线、pprof 和缓存编译结果的对比,说明如何定位并控制这类热路径开销。467 收藏 -
用 Go 设计一套可长期演进的 API 错误响应:统一错误码、稳定字段、请求追踪和兼容迁移一次讲清。352 收藏 -
订单同时有 paid、shipped、cancelled 三个布尔字段时,状态组合很快会失控。本文用 Go 实现一个显式订单状态机,梳理合法迁移、拒绝非法操作、落库与并发更新的边界。494 收藏 -
Go HTTP 接口遇到大 JSON 请求时,单靠解析失败并不能限制网络读取量。本文用一个批量导入接口的故障现场,说明 http.MaxBytesReader、413 响应、请求体关闭和回归检查如何配合,避免内存上涨与连接复用异常。355 收藏 -
用 Go 的 context.WithCancelCause 连接并发任务,让上游知道是超时、校验失败还是依赖服务异常,并用 Cause 做可验证的错误分类。450 收藏 -
接口定义已经改了,生成的 Go 文件却忘了提交,是多人协作里很隐蔽的一类问题。本文从生成入口、差异检查、提交前核对和 CI 门禁四个环节,搭建一套让 Protobuf 代码漂移无处藏身的 Go 项目工作流。473 收藏 -
Go 批量 CSV 导入不能先把全文件读进内存。用 csv.Reader 逐行读取、用大小与行数预算限制请求、按批写库并回传有限的失败行,才能让大文件导入既可控又方便用户修正。407 收藏