ホームページ > バックエンド開発 > Golang > HTTP リクエストの本文を変更せずに検査するにはどうすればよいですか?

HTTP リクエストの本文を変更せずに検査するにはどうすればよいですか?

DDD
リリース: 2024-12-21 16:34:10
オリジナル
568 人が閲覧しました

How Can I Inspect an HTTP Request Body Without Modifying It?

HTTP リクエストの本文を変更せずに検査する

状態を変更せずに受信した POST リクエストの本文を分析する必要があるシナリオでは、リクエスト ストリームが枯渇すると問題が発生し、リバースに転送するときにエラーが発生します。 proxy.

これに対処するには、次のアプローチを検討してください:

元のリクエスト本文 (io.ReadAll(r.Body)) からバッファを読み取ってバッファを作成します。

バッファを使用して 2 つの新しいリーダー:

  • rdr1 を作成し、次のような組み込みの解析関数を使用して分析します。 req.ParseForm().
  • 後続のコンシューマー用の rdr2 は、元のリクエストの状態がそのまま残ることを保証します。

rdr2 を r.Body に割り当て、後続のハンドラーが未変更のリクエストで動作できるようにします。 .

この手法を使用すると、元のリクエスト オブジェクトに影響を与えることなくリクエスト本文を検査でき、その後の整合性を確保できます。処理中です。

以上がHTTP リクエストの本文を変更せずに検査するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート