http/AI.md

22 lines
1.1 KiB
Markdown

# AI 指导规则 (AI.md)
## 模块信息
- **模块名**: `http`
- **当前版本**: `v1.1.0`
- **核心意图**: 高性能 HTTP 客户端,支持泛型绑定、并行分段下载与线程安全的全局 Header 管理。
## AI 调用建议
- **初始化**: 优先使用 `NewClient(timeout)`
- **结果解析**:
- 结构化数据:使用 `Bind[T](result)`
- 列表数据:使用 `result.Slice()``Bind[[]T](result)`
- 键值数据:使用 `result.Map()``Bind[map[string]T](result)`
- **并行下载**: 使用 `Download`,可通过 `client.MaxConnsPerHost` 调节并发。
- **表单提交**: 使用 `PostMultipart` 处理带文件的多部分表单。
- **全局配置**: 使用 `SetGlobalHeader(k, v)` 设置线程安全的全局头。
## 注意事项
- **并发安全**: `Client` 的方法是并发安全的,但 `Result` 对象不是。
- **内存池**: 内部使用 `sync.Pool` 优化了 Buffer 分配,在大负载下表现优异。
- **Body 释放**: `Bind`, `String`, `Bytes`, `Map`, `Slice` 均会自动关闭 Body。`ManualDo` 需要手动关闭。