Go教程技术文章
-
Go Kong 的命令树来自 Go 结构体和标签:普通字段是 flag,带 cmd 标签的嵌套结构体才是子命令。本文从嵌套字段未生效的症状出发,给出二级命令、参数归属和 Run 方法的最小写法。465 收藏 -
用 Go SQLX 查询一列多行数据时,可以直接用 Select 填充 []string;结果较大或需要处理 NULL 时,再用 Queryx 手动遍历并检查 rows.Err()。169 收藏 -
用 go-ldap/ldap/v3 的 ModifyRequest 和 Replace 只更新一个指定属性,并区分替换、追加、删除的请求语义。302 收藏 -
使用 go-ldap 的 ControlPaging 分批读取大型 LDAP 目录,掌握 cookie 续页、连接保持、错误处理和 pageSize 参数边界。334 收藏 -
在 Go LDAP 查询中使用 EscapeFilter 转义用户输入,固定属性名与过滤器模板,并区分过滤器值、DN 和查询结果处理边界。135 收藏 -
用 github.com/pkg/sftp 区分单文件请求上限、文件任务池和读写方向,并用 ReadFromWithConcurrency 精确控制一次传输的并发度。232 收藏 -
通过完整 Go SFTP 上传函数说明同目录临时文件、写入和关闭错误处理、POSIX 重命名及覆盖策略,并区分名称交接、持久化和消费确认,处理响应中断后的不确定结果。355 收藏 -
用 github.com/pkg/sftp 和 io.Copy 流式下载远端文件,配合临时文件、错误链与关闭错误处理,避免半成品污染最终路径。360 收藏 -
Go INI 默认会把同名键视为同一个 Key。本文用 ShadowLoad、ValueWithShadows 和 LoadOptions 说明怎样保留重复键的多个值,以及完全相同的重复值何时会被去重。446 收藏 -
Go INI 可以把文件、[]byte 和 Reader 作为多个配置源按顺序合并,后加载源覆盖同名键。本文用默认配置、环境覆盖和运行时字节配置说明优先级写法,以及 Loose、ShortCircuit、Append 的选型边界。210 收藏 -
使用 go-ini 读取 INI 时,可以用嵌套结构体上的 ini 标签对应节名,再用字段标签对应键名;本文给出 MapTo、StrictMapTo、类型转换和常见排查边界。200 收藏 -
讲解 JSON Pointer 对斜杠及波浪线的编码,通过完整 Go JSONPatch 示例区分单个成员和嵌套路径,并说明逐段构造、JSON 字符串编码与补丁错误处理。187 收藏 -
用 github.com/evanphx/json-patch/v5 的 MergeMergePatches 合并两份 JSON Merge Patch,并说明补丁顺序、null 删除、嵌套对象和数组整体替换的边界。208 收藏 -
Go 中应用 JSON Patch 的关键是先用 DecodePatch 解析 RFC 6902 操作数组,再用 Apply 或 ApplyWithOptions 作用到原始 JSON 文档,并明确缺失路径、copy 扩张和业务校验的边界。164 收藏 -
通过完整 Go 示例讲解 Validator TagNameFunc 的注册与错误提取,区分 JSON 字段名、Go 字段名和嵌套路径,说明缓存时机及 json 忽略标签的处理方式。139 收藏