Skip to content

API リファレンス

HTTPC は 26 個のリクエストオプション関数、5 つの設定プリセット、8 つの組み込みミドルウェア、完全なダウンロードサポートを提供します。

コアアーキテクチャ

text
httpc パッケージ
├── Client インターフェース - メインクライアント、全 HTTP メソッド対応
├── DomainClienter インターフェース - ドメインスコープクライアント、セッション管理内蔵
├── Config - 設定システム(タイムアウト/接続/セキュリティ/リトライ/ミドルウェア)
├── RequestOption - 26 個のリクエストオプション関数
├── MiddlewareFunc - ミドルウェアチェーン
├── Result - レスポンス結果(リクエストメタデータ付き)
└── パッケージ関数 - クライアント作成なしで使用可能

モジュールナビゲーション

コア

モジュール説明
パッケージ関数Get/Post/Put/Patch/Delete などのパッケージ関数、クライアントメソッド、ヘルパー関数
設定Config 構造体、5 種類のプリセット設定、検証関数、Cookie セキュリティ
インターフェースClient、Doer、DomainClienter、RetryPolicy などのコアインターフェース
ResultResult、RequestInfo、ResponseInfo、RequestMeta タイプと全メソッド

リクエストとレスポンス

モジュール説明
リクエストオプション26 個の WithXxx リクエストオプション関数(ヘッダー、ボディ、認証、Cookie、コールバックなど)
ミドルウェアChain コンビネーション、8 つの組み込みミドルウェアファクトリ、監査イベントタイプ
エラータイプClientError、12 種類の ErrorType 列挙、13 個のエラー変数

高度な機能

モジュール説明
ドメインクライアントDomainClient 作成、HTTP メソッド、ダウンロードメソッド、URL 構築ルール
セッション管理SessionManager の Cookie/ヘッダー管理とセキュリティ検証
ファイルダウンロードダウンロード関数、DownloadConfig、レジューム、セキュリティ保護
定数とタイプBodyKind 列挙、FormData/FileData、監査コンテキストキー

クイックリファレンス

クライアントの作成

go
client, err := httpc.New()                    // デフォルト設定
client, err := httpc.New(httpc.SecureConfig()) // セキュアプリセット
client, err := httpc.New(customConfig)         // カスタム設定

リクエストの送信

go
// パッケージ関数
result, err := httpc.Get(url, options...)

// クライアントメソッド
result, err := client.Get(url, options...)

// コンテキスト付き
result, err := client.Request(ctx, "GET", url, options...)

レスポンスの処理

go
result.StatusCode()           // ステータスコード
result.Body()                 // レスポンスボディ(文字列)
result.RawBody()              // レスポンスボディ(バイト)
result.Unmarshal(&data)       // JSON パース
result.IsSuccess()            // 2xx かどうか
result.Meta.Duration          // リクエスト所要時間
result.Meta.Attempts          // リトライ回数
defer httpc.ReleaseResult(result) // オブジェクトプールに返却