はじめに
このプロジェクトでは、Go のhttp.RoundTripperインターフェイスを使って HTTP リクエストを透明に変更する方法を学びます。リクエストボディの MD5 ハッシュを計算し、それを「X-Md5」フィールドとしてリクエストヘッダに追加するカスタム HTTP トランスポートを作成します。
👀 プレビュー
$ /usr/local/go/bin/go test
PASS
ok md5transport 0.004s
🎯 タスク
このプロジェクトで学ぶことは以下の通りです。
- HTTP リクエストとレスポンスに対してカスタム操作を行うために
http.RoundTripperインターフェイスをどのようにカプセル化するか。 - リクエストボディの MD5 ハッシュをどのように計算し、それをリクエストヘッダに追加するか。
- MD5 ハッシュを計算した後でリクエストボディをどのようにリセットして元のリクエスト状態を維持するか。
🏆 成果
このプロジェクトを完了すると、以下のことができるようになります。
- Go における HTTP リクエストの透明な変更の概念を理解する。
- リクエストとレスポンスに対して様々な操作を行うことができるカスタム HTTP トランスポート層を実装する。
- 認証、ロギング、またはリクエスト/レスポンス操作などの追加機能で自分自身のアプリケーションを強化するために知識を適用する。


