Go语言技术文章
-
qooapp 官方开发者文档说明了 APK 发布前的包名与 versionCode 约束。本文整理字段含义、核对顺序和不应据此推断的范围。413 收藏 -
用 PHP Attribute 为控制器方法声明路由元数据,再通过 Reflection 生成一次性路由表,覆盖读取、缓存、HTTP 方法区分和重复路由冲突处理。413 收藏 -
Golang · Go教程 | 1星期前 | 单元测试 · Context · Go教程 · HTTP客户端 · Go 上下文取消 HTTP测试 testing.T.Context http.NewRequestWithContext
Go 1.24 起,testing.T.Context 能把测试生命周期直接传给 HTTP 客户端请求。本文给出最小代码、超时收紧、子测试边界,并解释它与 httptest.NewRequestWithContext 的区别。413 收藏 -
time.Now() 返回的 time.Time 可能同时含墙上时钟与单调时钟读数。本文说明序列化前为什么常用 Round(0) 清理进程私有字段,以及反序列化后如何用 Equal 正确比较时间。413 收藏 -
bbolt 的嵌套 Bucket 可以把业务域、租户和键值放进清晰的层级路径。本文用一组幂等初始化、写入读取与删除边界,说明如何在事务内隔离业务数据。413 收藏 -
Vite 的 import.meta.env 主要在开发服务器启动或生产构建阶段读取并静态替换,浏览器运行时不能直接改写已经打包的值。本文解释构建期配置与运行时配置的边界,并给出外置 config.js 的落地方式。413 收藏 -
Go HTTP Server 可以通过 BaseContext 为新连接提供服务级根上下文。本文说明如何创建可取消的服务上下文、接入 http.Server,并区分 BaseContext、ConnContext 与请求上下文的生命周期边界。413 收藏 -
LLM 可观测性不等于把 prompt 和回答原文写进日志。本文以 OpenAI 兼容的 Chat Completion 响应为例,说明怎样记录 prompt_tokens、completion_tokens、total_tokens 等用量元数据,并在应用边界完成字段白名单、敏感信息脱敏和流式 usage 处理。413 收藏 -
Go 项目已有 vendor 目录却没有使用时,先检查主模块根目录、go.mod 的 go 版本、GOFLAGS 或 -mod 覆盖项,再用 go mod vendor 同步 vendor/modules.txt,并用 -mod=vendor 确认构建路径。413 收藏 -
用 Go slices.Chunk 按固定大小遍历任务批次,说明最后一批、空输入、非法批大小、共享底层数组与 slices.Clone 副本边界。413 收藏 -
Prompt 变化不能只靠复制文本和人工回忆。本文用模板、变量、模型配置、输入集和输出指标五类记录,搭建可重放、可比较、可回滚的版本流程。412 收藏 -
FileHeader.Filename 是客户端提交的展示元数据,即使 Go 做了基础名处理,也不应直接决定服务器路径。本文用随机存储名、扩展名白名单和受控目录完成安全保存。412 收藏 -
filepath.Rel 会按当前操作系统的分隔符、绝对路径和卷名规则计算词法相对路径。本文给出可复用封装,说明不同盘符、绝对与相对混用、ToSlash、符号链接及安全边界,并用表驱动测试验证。412 收藏 -
Go net.Conn 的 Deadline 是持续生效的绝对时间,不是下一次读写的等待时长。本文区分总截止时间与空闲超时,并给出读写分离、滑动刷新、清除 deadline 和超时错误判断方法。412 收藏 -
bufio.Reader.ReadLine 遇到超长文本时会通过 isPrefix 返回多个片段。本文用一个可复用的读取函数说明如何拼接软换行、处理 EOF 与错误,并解释返回切片的生命周期。412 收藏