Go HTTP 客户端上传文件入门:multipart 请求怎么构造
用头像上传客户端示例讲 Go 如何构造 multipart/form-data 请求,包含文件字段、普通字段、Content-Type 和测试。
tag
用头像上传客户端示例讲 Go 如何构造 multipart/form-data 请求,包含文件字段、普通字段、Content-Type 和测试。
系统讲解如何将领域驱动设计(DDD)的思想应用到 Go 项目中,覆盖实体、值对象、聚合、领域事件、仓储、应用服务、限界上下文、防腐层、CQRS 和事件溯源,配合整洁架构的完整实战
HTTP 服务发布或重启时,如果直接杀进程,正在处理的请求可能被中断,用户看到连接错误,后台写入也可能只完成一半。Go 的 可以帮助服务优雅关闭:停止接收新连接,等待已有请求完成,直到超时。本文用一个标准 HTTP 服务讲关闭流程、信号处理和常见边界。
用批量插入任务示例讲 database/sql 中 PrepareContext、Stmt、参数绑定、关闭资源和与普通 ExecContext 的取舍。
CSV 是最不起眼、也最容易出事故的数据格式。运营同事从后台导出一份表,财务系统给你一份结算明细,供应商发来一批商品编码,很多时候都是 CSV。初学者常犯的错误是用 处理。只要字段里出现逗号、换行或双引号,这个办法马上失效。
深入探索如何用 Go 构建 AI 驱动的应用程序。从调用 OpenAI/Claude API、流式响应处理、Function Calling,到向量嵌入、RAG 实现、AI Agent 构建,全面覆盖 Go 与 AI 结合的最佳实践。
在微服务架构中,gRPC 作为一种高性能、跨语言的远程过程调用(RPC)框架被越来越多的项目采用。gRPC 默认使用 Protocol Buffers 作为数据序列化格式,具有数据紧凑、解析速度快等优点。但在实际生产环境中,我们常常需要同时支持传统的 RESTful API 接口,原因包括兼容...
很多列表接口一开始会把所有数据查出来,放进切片,再 。数据少时没问题,数据一多,内存会飙升,用户也要等全部数据准备好才能收到响应。对于导出类接口,可以考虑流式 JSON 响应:边查、边编码、边写给客户端。
全面讲解如何在 Go 项目中集成 OpenTelemetry,实现 Tracing、Metrics、Logging 三大支柱的可观测性,覆盖自定义 Span、上下文传播、自动埋点、导出到 Jaeger/Tempo、Prometheus 集成和 Grafana 仪表盘
登录状态是 Web 开发绕不开的话题。很多初学者一听到 Session,就会把它想成某种神秘机制。其实从 HTTP 角度看,Cookie 是浏览器保存并自动带回服务端的一小段数据;Session 是服务端用这段数据找到用户状态的一种做法。Cookie 在客户端,Session 数据通常在服务端。
很多人第一次写 Go 程序,是从一个 HTTP 服务开始。但在真实团队里,命令行小工具同样常见:清理过期文件、导入一批 CSV、生成报表、检查接口是否可用。小工具看起来简单,最容易写成“先能跑再说”的样子:路径写死在代码里,超时时间散落在函数里,出了错只打印一行“failed”。等这个工具被同事拿去每天跑,问题就来了。
随着大语言模型(LLM)技术的快速发展,其在自然语言处理、智能客服、内容生成等领域的应用日益广泛。然而,开发高效、可靠的大语言模型应用仍面临诸多挑战,如复杂的流程编排、高维护成本、弱类型语言带来的调试困难等。
Go 1.25 即将到来,带来后量子密码学 crypto/mlkem、Profile-Guided Optimization 增强、net/http 中间件支持、工具链与 go work 改进,以及一系列性能优化。本文带你抢先预览这些激动人心的特性。
很多 Go 初学者会给 HTTP handler 写测试,却不知道怎么给 HTTP 客户端写测试。比如你的服务要调用一个用户中心接口,代码里有 、URL、请求头和 JSON 解码。测试时不可能真的去调用线上用户中心,也不应该为了单元测试启动一整套依赖。标准库里的 提供了一个很实用的工具: 。
用预约提醒场景讲 Go 中 UTC 存储、本地时区展示、time.LoadLocation、ParseInLocation 和跨时区测试。
Kubernetes 和 Apache Mesos 是两种流行的容器编排与资源管理工具,对比分析其架构设计、功能、使用场景、优势与劣势。
Go 项目实战:从零构建完整的 Web 应用 学了这么多 Go 的理论和零散的知识点,是时候来一个完整的项目实战了。今天,我们将从零开始构建一个真实的项目—— 在线任务管理系统(TaskMaster) 。
很多初学者一听到”单元测试”,就想到 mock 框架。其实 Go 里最常用、最舒服的测试替身,往往只是一个小结构体。你定义一个刚好够用的小接口,测试里手写 fake 或 spy,就能验证业务逻辑,而不用真的发邮件、调支付或连外部 API。
有些函数的输出很长,比如生成 Markdown、渲染配置文件、格式化 JSON、生成 SQL。你当然可以在测试里写一个很长的字符串常量,但测试文件会变得难读。黄金文件测试,也叫 golden file test,就是把期望输出放在单独文件里,测试时读取文件并比较。
Go 与区块链:从概念到实现 区块链,这个听起来很神秘的技术,其实核心思想非常简单: 去中心化的、不可篡改的数据账本 。你可能听说过比特币、以太坊,但你知道区块链的底层原理吗? 今天,我们将用 Go 语言从零开始构建一个简单的区块链系统,深入理解区块链的核心概念:区块、哈希、工作量证明、交易、钱包和 P2P 网络。