リクエストを特定のサーバーに送信すると、303の応答が返され、200のステータスコードと組み合わせて要求された応答が返されます。 面白いことに、開発者コンソールのネットワークビューでしか見ることができません。 my $ .ajax()リクエストのステータスコードとレスポンスをチェックすると、2番目のリクエストのレスポンスと200個のhttpステータスコードがあります。jquery(リダイレクトの防止)の303ステータスコードに反応します。
問題は、2番目のリクエストがキャッシュされているようです(ステータスコードは200ですが)、キャッシュできないようにする必要があります。 したがって、私は実際にHTTP 303ステータスコードで発生する転送プロセスに介入したいと思います。私のjquery関数は、ステータスコードを確認し、明示的なヘッダーでget要求を送信し、サーバーにレスポンスをキャッシュしないように指示します。
jQuery.ajaxメソッドは転送されたリクエストのレスポンスとステータスコード(200)で応答するため、これを行う方法はわかりません。
私を助けることができますか?
編集
10.3.4 303参照他
要求に対する応答が、異なるURIの下に見つけることができると がそのリソースにGETメソッドを使用して取得されるべきです。このメソッド は主に、POST起動スクリプトの出力を に選択して、ユーザーエージェントを選択したリソースにリダイレクトできるようにするために存在します。新しいURIは、最初に要求されたリソースの代替参照ではない です。 303 応答をキャッシュしてはいけませんが、2番目の (リダイレクトされた)要求に対する応答はキャッシュ可能である必要があります。
多分私はリダイレクトすることができるので、ユーザーエージェントが自分自身をリダイレクトできないようにする必要がありますか?
または、クライアント側からの2番目の要求をキャッシュしないようにサーバー/ブラウザに通知する方法はありますか?それとも私の要求をリダイレクトしないようにするのですか?リダイレクトする前に少なくとも2番目の要求を変更する必要がありますか?
httpリクエスト – keinabel