Go教程技术文章
-
围绕 Go net/http Client 讲清 Transport 复用、Response Body 关闭、读到 EOF、状态码判断和异常场景检查清单,给出可复用的请求封装方案。232 收藏 -
Golang · Go教程 | 2天前 | go · https · Go crypto/tls按ServerName选择证书 tls.Config.GetCertificate ClientHelloInfo.ServerName Go SNI证书 Go多域名HTTPS
围绕 Go crypto/tls 的 ClientHelloInfo.ServerName,说明如何在 GetCertificate 中按 SNI 选择 tls.Certificate,处理未知域名、无 SNI 的默认回退,并区分 GetConfigForClient 的适用边界。230 收藏 -
Go 导出 CSV 时,Writer.UseCRLF 决定记录行尾是否使用回车加换行。本文从表格软件兼容、字段引用、Flush 与字节检查几个环节说明如何稳定落地。221 收藏 -
Go 的 gzip.Writer 会把 Header.ModTime 写进 gzip 头部 MTIME。固定 UTC 秒级时间,并在 Write、Flush 或 Close 之前设置,才能避免归档因当前时间变化而产生不稳定字节。211 收藏 -
Go text/template 的 missingkey 不是统一的必选项:default 保留兼容行为,zero 返回元素类型零值,error 让 Execute 立即失败。本文按模板用途给出选择方法和落地清单。204 收藏 -
Decoder.InputOffset 记录的是解码器当前位置,不一定就是坏字段。处理 JSON 解析失败时,先读取 SyntaxError.Offset,再用 InputOffset 和附近字节片段缩小排查范围。201 收藏 -
Go json.Decoder 的 Token 会逐个返回 JSON token。本文用 json.Delim 和深度计数识别对象、数组的嵌套边界,并说明对象字段、数组元素、EOF 与畸形输入的处理节奏。198 收藏 -
Go 的 net/url.JoinPath 会合并 URL 路径并清理重复斜杠、点段。本文说明包级函数与 URL.JoinPath 的选择、PathEscape 的路径段边界,以及尾斜杠和错误处理要点。180 收藏 -
介绍 Go net/netip.ParseAddrPort 如何解析 IPv4、IPv6 和数字端口,说明 AddrPort 的字段读取、方括号规则、端口 0 与常见错误处理。177 收藏 -
用 Go embed.FS 把静态资源编译进二进制,再通过 fs.Sub、http.FS、StripPrefix 和 FileServer 对齐嵌入根目录与 URL 前缀,解决部署漏文件和静态路径 404。167 收藏 -
用 Go net/http Flusher 发送增量响应时,先判断 ResponseWriter 能力,再处理请求取消、写入错误和代理缓冲,避免把 Flush 当成端到端实时保证。165 收藏 -
用 Go embed.FS 把模板目录编译进二进制,启动时通过 html/template.ParseFS 解析,请求阶段用 ExecuteTemplate 执行,并说明嵌入路径、模板名称、匹配规则和发布边界。163 收藏 -
围绕 Go time.Date 处理夏令时日期的真实边界,讲清本地时间往返校验、跳时缺口、重复小时、offset 记录和 UTC 存储策略。162 收藏 -
Golang · Go教程 | 2天前 | Go教程 · Go slog JSONHandler时间格式 HandlerOptions ReplaceAttr slog.TimeKey Go结构化日志时区 time.Time Format
Go log/slog 的 JSONHandler 没有直接的时间布局参数,本文用 HandlerOptions.ReplaceAttr 重建 time 属性,讲清 Go 时间布局、UTC、分组字段和零时间的处理边界。158 收藏 -
Go io.NewSectionReader 可以把 ReaderAt 限定在指定偏移和长度内读取。本文说明 off 与 n 的范围表达、ReadAt 的相对偏移、EOF 判断以及并发和资源生命周期边界。148 收藏