Go语言技术文章
-
Golang · Go问答 | 1天前 | net/http · Go问答 · HTTP重试 · 请求体 · 接口稳定性 · net/http Go HTTP重试 Request.GetBody Request.Clone 请求体复用
Go HTTP 客户端第一次请求失败后直接重用同一个 Request,第二次可能只剩空请求体。问题不在重试次数,而在 Body 已经被消费;用 Request.GetBody 构造可重放副本,配合 Request.Clone 处理上下文和 Header,才能把重试边界写清。273 收藏 -
Golang · Go问答 | 1天前 | go · 安全 · net/http · HTTP重定向 · 请求头 · 请求头 Authorization 安全边界 CheckRedirect Go HTTP重定向
Go 的 http.Client 遇到 301、302 或 307 时,不会无条件把原请求头复制到新地址。本文从一次鉴权失效现场出发,验证 CheckRedirect、Authorization、Cookie 和跨主机跳转的行为,并给出安全可控的处理方式。268 收藏 -
Go sync.Pool 能减少临时对象分配,但它不是可靠缓存。本文用日志和基准测试拆开 Get、Put、GC 清空、对象重置与并发场景,说明哪些对象适合放进 Pool,哪些数据必须交给真正的缓存或业务存储。261 收藏 -
Golang · Go问答 | 1天前 | 标准库 · bufio · 网络协议 · Go问答 · 流式读取 · peek Go bufio.Reader 协议解析 Go问答 Discard UnreadByte
Go 用 bufio.Reader 解析带长度或分隔符的协议时,Peek 只是查看缓冲内容,不会推进读取位置;Discard 才会消费字节。本文用一个简化帧协议拆开 Peek、Read、Discard、UnreadByte 的数据流转和边界处理。234 收藏 -
软件著作权申请人可以是与软件权利归属相符的自然人、法人或其他组织。本文用个人开发、公司开发、委托开发和合作开发四种场景,说明申请人选择、证明材料和常见填错点。232 收藏 -
2026年三伏天共40天,初伏是7月15日至7月24日,中伏是7月25日至8月13日,末伏是8月14日至8月23日。本文说明日期怎么算、哪里核对,以及高温天气下更实用的避暑提醒。222 收藏 -
临时目录清理最容易出问题的地方,不是调用 unlink,而是筛选条件太宽、相对路径越界和删错文件后无法复盘。用 pathlib 统一解析路径,按后缀和 mtime 过滤,先写入待删清单再处理,就能把一次性脚本变成可检查、可回退的清理流程。219 收藏 -
申请软件著作权登记,通常要准备申请表、软件鉴别材料和相关证明文件。本文按申请前的核对顺序,说明源程序、文档、身份证明、开发关系材料以及版本号如何保持一致。203 收藏 -
Go 1.21 引入的 log/slog 让结构化日志更容易落地,但字段从 slog.Any 到 Handler 再到 JSON 输出时,组、动态值和敏感字段仍有边界。本文用订单请求日志拆解字段流转、Handler 包装与脱敏验证。193 收藏 -
科技周边 · 业界新闻 | 1天前 | 前端 · 流式处理 · sse · Web Streams · TextDecoderStream · 流式解码 SSE ReadableStream TextDecoderStream UTF-8分块
SSE 返回的 UTF-8 字节可能把一个汉字拆在两个网络 chunk 中,逐块直接 TextDecoder.decode 容易出现替换字符。本文用浏览器 TextDecoderStream 处理 SSE 文本流,说明 pipeThrough、行缓冲、事件结束标记和兼容边界。186 收藏 -
科技周边 · 人工智能 | 1天前 | go语言 · 异步任务 · 人工智能 · openai · API工程化 · Go 异步任务 轮询 数据保留 OpenAI Responses API background mode
长时间 AI 请求不适合一直占着 Go HTTP 连接。本文用一个报告生成场景拆开 Responses API background mode 的提交、轮询、完成判断和错误处理,并提醒后台模式与数据保留、Zero Data Retention 的边界。183 收藏 -
一次 Go 流式上传在异常路径卡死的排查记录:用 io.Pipe、CloseWithError 和 goroutine 栈定位背压与退出顺序问题,再补上可验证的清理和超时边界。182 收藏 -
给管理接口增加 IP 白名单时,字符串比较、IPv4 与 IPv6 混用、掩码边界都容易出错。本文使用 Go netip.ParsePrefix 和 Prefix.Contains 搭建可复用的 CIDR 白名单校验器,补齐配置检查、匹配顺序和失败回归用例。167 收藏 -
Redis 8.8 带来原生 Array 数据结构,适合滚动窗口、按索引读取和范围聚合。本文用一组最小命令验证它与 List 的差异,并给出从 List 迁移前应检查的读写边界、客户端支持和回滚办法。154 收藏 -
2026年七夕是公历8月19日,对应农历七月初七。本文说明日期为什么每年变化、如何用农历日历和权威天文资料核对,以及安排约会、送礼和出行时需要注意的时间边界。137 收藏