用途:在 fp-go 中使用 ReaderIOResult 单子封装 net/http,实现可组合、上下文感知、错误自动传播的 HTTP 请求。核心包:github.com/IBM/fp-go/v2/context/readerioresult/http。所有操作惰性执行,需传入 context.Context 才真正运行。
主要能力:Requester 类型为 ReaderIOResult[*http.Request];Client 接口提供 Do(Requester) ReaderIOResult[*http.Response]。用 H.MakeClient 创建客户端,H.MakeGetRequest 或 H.MakeRequest 构建请求。响应读取器包括 ReadJSON[A](校验状态与 Content-Type 并反序列化)、ReadText、ReadAll、ReadFullResponse(返回 Pair[*http.Response, []byte])。
组合与并发:可用 F.Pipe 组合请求与读取器,用 RIO.ChainFirstIOK 记录日志。同类型并发用 RIO.TraverseArray,不同类型并发用 RIO.TraverseTuple2 等。
Builder API:通过 B.Default 配合 B.WithURL、B.WithMethod、B.WithJSON、B.WithBytes、B.WithHeader、B.WithBearer、B.WithQueryArg 构建复杂请求,再用 RB.Requester 转为 Requester。
错误处理:请求创建、状态码、Content-Type 校验与 JSON 解析错误均通过 Result 单子传播,可在调用点用直接提取或 RIO.Fold 处理。
限制:需 Go 1.24+;资料未提供安装命令、收费、平台或效果信息。