POST => 302のGETへのリダイレクトの正しい動作は何ですか?GETへのHTTP POST => 302リダイレクトの正しい動作は何ですか?
私は、(私がリダイレクトしたいリソースに)POSTした後、302のリダイレクトを受け取った後、ブラウザは自動的に302の場所でGETを発行します。これはさらにwell known patternです。しかし、私が仕様を読んでいるように、これは起こるべきではないと示唆しているようです。 302のステータスコードが GETまたはHEAD、ユーザエージェント以外の要求に応答して受信された場合、それをすることによって確認することができる場合を除き
を自動的 要求をリダイレクトしてはいけませんユーザー、これは が要求された条件を変更する可能性があるためです。
そして、シオマネキ表示されます。
REQUEST 1: POST URLA
RESPONSE 1: 302 redirect to URLB
REQUEST 2: GET URLB
上記のセクションでは、ブラウザがGET要求を行うべきではないと言っているようですか?私は何が欠けていますか?
- 以前
- このセクションは無関係になりスペックで自動的にリダイレクトの私の理解が間違っている(とGETをしたChromeブラウザをリダイレクト自動的に本当にありませんでした)何か
- 確認この私の理解ユーザーとして
- 他に何か?
abarnet:あなたは "古いブラウザ" によって何を意味するのか明確にしてください - >応答POST/formHandler:
次に、あなたは
要求を持っています。 –
@JulianReschke:私は正確には分かりません。私が推測しなければならないのは、ビンテージがIE6とFF 1.9の周りにあると思います。しかし、デスクトップブラウザ(およびWebKitモバイルブラウザ)だけがそこにいるユーザエージェントではないことに注意してください。 – abarnert
@JulianReschke:303と307はHTTP/1.1のみであると言わざるを得ないでしょう。 1.1を扱うことができないサーバーやキャッシュ(そしていくつかのユーザーエージェント)があります。また、無効にすることもできます。その間、私は[blog post]を見つけました(http://blogs.msdn.com/b/ieinternals/archive/2011/08/19/understanding-the-impact-of-redirect-response-status-codes-on- http-methods-like-head-get-post-and-delete.aspx)を使用します。 – abarnert