LoginSignup
1
2

More than 1 year has passed since last update.

リダイレクトした時にHTTPメソッドはどうなる?

Last updated at Posted at 2022-06-08

はじめに

「リダイレクトするとGETリクエストになる」と無邪気に思っていたが、改めて聞かれると自身がなかったのでちゃんと調べてみた。

やってみよう

簡単なスクリプトを作って実際にやってみた。

結果

GET、POSTでそれぞれリクエストした後にリダイレクトするとHTTPメソッドはどのようになるか?
※ 特殊リダイレクト2つは除く(300 Multiple Choice、304 Not Modified)

種類 ステータスコード GET POST
恒久的 301 Moved Permanently GETのまま GETになる
恒久的 308 Permanent Redirect GETのまま POSTのまま
一時的 302 Found GETのまま GETになる
一時的 303 See Other GETのまま GETになる
一時的 307 Temporary Redirect GETのまま POSTのまま

まとめ

思い込みに反して元のHTTPメソッドを変更しないパターンがあった。
リダイレクトのステータスコードまで意識されているケースはほとんど見たことがなく、大抵はデフォルト(302)だったりするので「リダイレクトするとGETリクエストになる」と思っていた。

知識の裏をとっておくのは大事。

参考

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2