Go语言技术文章
-
一组适合锁屏与桌面的雨夜玻璃温室手机壁纸提示词:主图用冷青湿润叶片和上方留白,变体改为琥珀灯光与更深的纵向层次,并附中英文完整提示词与改词方法。489 收藏 -
用 Go atomic.Pointer 替换进程内共享配置时,关键不是把指针换掉,而是保证读线程拿到完整快照、发布顺序清楚且失败时能回到旧版本。本文用一份可运行的配置结构说明初始化、原子发布、校验和回滚边界。488 收藏 -
用一个可复用的卡片组件说明 CSS container query 与 ResizeObserver 的分工:样式交给 CSS,数据计算交给观察器,并通过 requestAnimationFrame 合并重复通知。488 收藏 -
Go 1.24 为 net/http 增加 HTTP2Config 与 Protocols 配置。本文从服务端并发流限制和客户端兼容验证入手,说明 HTTP2Config 适合解决什么问题、哪些字段只对服务端生效,以及如何用最小代码确认协议协商结果。488 收藏 -
Golang · Go教程 | 3天前 | JSON · go · 接口开发 · 安全编程 · Go encoding/json DisallowUnknownFields Decoder API参数校验
Go API 接收 JSON 时,如何用 Decoder.DisallowUnknownFields 拦截拼写错误和多余字段?本文从请求解码链路出发,给出可运行示例、错误响应策略与生产验收清单。487 收藏 -
Golang · Go问答 | 3天前 | 正则表达式 · 调试 · regexp · Go问答 · 文本处理 · Go regexp 捕获组 FindAllStringSubmatchIndex 字节位置
FindAllStringSubmatchIndex 返回的是原字符串的字节区间,不是字符下标。本文用一个日志标注小工具拆开整段匹配、捕获组、未匹配分组和 UTF-8 边界,给出可运行的映射方法。487 收藏 -
用 Redis INCRBYFLOAT 做累计值时,重点不是把返回值当金额类型,而是核对输入格式、字符串结果、浮点误差和业务落库边界。487 收藏 -
用 log/slog 的 HandlerOptions.AddSource 控制 source 字段,理解调用位置信息从哪里来、何时值得开启,以及如何在生产日志中验证它的代价。487 收藏 -
Go 1.21 引入的 clear 可以一次删除 map 的全部元素,但它不负责并发保护,也不等于立刻把底层内存还给操作系统。本文用可运行基准拆开清空速度、复用场景和重建 map 的边界。487 收藏 -
用 ResizeObserver 监听响应式卡片宽度时,先读取 borderBoxSize,再用 requestAnimationFrame 合并同一帧更新,避免回调里反复改布局造成循环告警。487 收藏 -
Go 1.23 引入的 slices.Values 可以把切片暴露为 iter.Seq。本文用同一段可运行示例验证 range 消费、空切片和提前 break 的行为,并说明它与直接遍历切片的边界。487 收藏 -
context.AfterFunc 的 stop 返回 false,不等于回调丢失;它表示回调可能已经启动,或此前已经停止。本文用连接读超时和资源清理场景拆解停止竞态、完成同步与幂等写法。486 收藏 -
encoding/base64 的 AppendEncode 会把编码结果追加到已有切片,适合复用缓冲区。本文通过可运行示例说明输出容量、尾部数据和 RawStdEncoding 的边界。486 收藏 -
os.ReadDir 和 File.ReadDir 都能遍历目录,但排序规则并不相同。本文用最小示例说明文件名排序、directory order、n 参数和分页读取的边界,避免把稳定输出误当成底层目录顺序。486 收藏 -
Go 的 url.URL.JoinPath 会合并路径、清理 ./ 和 ../,并把连续斜杠压成一个。它适合拼接已经转义的路径片段,但不能替代路径段转义;本文用源码规则解释斜杠变化和路由边界。486 收藏