0

私の会社には、基本的に短いエイリアスを完全な URL にリダイレクトするショートカット サービスがあります。サーバーは、ホスト要求ヘッダーを使用してファイル システム ベースのデータストアを検索する単純な http リダイレクション ( 302 ) サービスを実行します。

Resful Web Applciation があり、すべてのGETリクエストは正常に機能していますが、 POST/PUTリクエストがサーバーに到達していません。

302 "リダイレクト" はデフォルトで元の要求されたメソッドを保持しますか、それとも GET タイプで上書きされますか?

4

2 に答える 2

1

302 は、通常、303 で指定されているように実装されます。元の方法を維持するには、代わりに 307 を使用します。

HTTP ステータス コード定義の302セクションも参照してください。

注: RFC 1945 および RFC 2068 では、リダイレクトされた要求でクライアントがメソッドを変更することは許可されていないと規定されています。ただし、ほとんどの既存のユーザー エージェント実装は、302 を 303 応答であるかのように扱い、元の要求メソッドに関係なく、Location フィールド値に対して GET を実行します。ステータス コード 303 および 307 は、クライアントに期待される反応の種類を明確に明らかにしたいサーバー用に追加されました。

303は、GET によって新しい場所を要求する必要があることを指定します。307はオリジナルの方法を守っています。

于 2013-03-22T13:37:10.163 に答える
1

302 の場合、POST は常に GET に書き換えられます。場合によっては他の方法も使用します (ブラウザーがどの程度壊れているかによって異なります。http: //greenbytes.de/tech/tc/httpredirects/を参照してください)。

于 2013-03-22T14:28:03.747 に答える