php エディター Baicao は、今日よくある問題、つまり、Gin/GoLang フレームワークを使用するときに POST リクエストを GET リクエストに変更する方法を紹介します。特定の状況やテストの便宜などで、POST リクエストを GET リクエストに変換する必要がある場合があります。ただし、この機能の実装はそれほど単純ではなく、いくつかのコツとコードの調整が必要です。次に、この質問に段階的に答えて、この変換を正常に完了できるように支援します。
ginフレームワークのgetメソッドでpostメソッドを変更できないようです。リクエストを受信したら、その認証情報を確認し、有効であれば、get エンドポイントを持つ別のページにリダイレクトしたいと考えています。 c.request.method="get"
を使用すると、現在のエンドポイントのリクエストのみが変更されるように見えますが、リダイレクトされたエンドポイントには元のメソッド (post メソッド) がまだ残っています。
コード:
リーリーコード 307
リクエストは元々 post
リクエストでしたが、エンドポイント自体によって get
に変更されました。
実行 c.request.method="get"
役に立ちません。答えも見つからない。この動作を変更する方法はありますか?新しいリクエストを作成することが唯一の解決策ですか?
307ステータスコードドキュメントの内容:
元のリクエストのメソッドと本文は、リダイレクトされたリクエストを実行するために再利用されます。 GET に使用するメソッドを変更したい場合は、代わりに 303 See Other を使用してください。
したがって、http.StatusTemporaryRedirect
を http.StatusSeeOther
に変更すると、元のリクエスト メソッドを変更せずに機能します。
以上がGin/GoLang を使用して POST リクエストを GET リクエストに変更できないの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。