Go で構築された Web サーバーを使用して POST リクエストを特定の URL に送信すると、ユーザーはGET リクエストへの予期しないリダイレクトが発生する可能性があります。この問題は、登録されたハンドラー パスと要求された URL の間に不一致があり、リダイレクトが発生した場合によく発生します。
Go の http パッケージのデフォルト実装では、次の点に関する特定のルールが適用されます。 URL の末尾のスラッシュ。ユーザーが末尾にスラッシュ / を含むパスのハンドラーを登録したが、末尾にスラッシュがない URL にブラウザを誘導すると、サーバーは自動的に 301 リダイレクト応答を送信します。これにより、ブラウザが正しい URL 形式に従い、登録されたハンドラーと一致することが保証されます。
この問題を解決するために、開発者はいくつかの戦略を採用できます。
リダイレクトが発生すると、ブラウザーは POST データを繰り返さないことに注意することが重要です。これは、ユーザーが同じ機密データを新しい URL に送信するつもりかどうかをブラウザーが判断できないためです。したがって、ユーザーは POST リクエストを送信するときに正しい URL が使用されていることを確認する必要があります。
以上がGo Web サーバーが POST リクエストを GET リクエストにリダイレクトするのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。