要求のキャッシングの問題と解決策をGET

まず、問題が発生しました

最近のプロジェクトで問題が発生しました:システムにアクセスするには、企業ネットワークによるアクションの実施を、ブラウザが送信要求(サーバー側のコードの印刷ジャーナル)が正しいですが、実行はネットワークの運用外の会社を使用することに等しいです、サーバがログを印刷しません。 (要求がサーバーに到達していない)が、ブラウザ表示は、リクエストを送信し、データを返します(ただし、業務データが空である)しています。

運転・保守スタッフがサーバーのパケットキャプチャに見つけ、要求がネットワークサービス側の外に到達していないことが判明するので、最初の判断は、外部のネットワークに関連しなければならない、問題は、フロントエンドの原因であることを表示されます。

要求を開始したフロントエンドのコードを表示し、要求がGET要求であることが判明し、その後の情報を見つける:一部のブラウザでは、元のGETリクエストはリクエストをキャッシュします、ブラウザがリクエストを送信しませんが、むしろ最後の要求を取得します結果。

 

次の2つは、jQueryのソリューションは以下のとおりです。

$アヤックス({ 
      URL: '/アウター/ CERT /拡張子/ getLatestCertOperInfo' 
      種類: '取得' 
      データ型: 'JSON' 
      非同期:キャッシュ: 
      成功:機能(データ){ 

      } 
});

キャッシュがfalseに設定されています。これは、GET要求の追加のタイムスタンプパラメータで動作「_ = {タイムスタンプ}」

 

注意:また、キャッシュは乱数の形でプログラムでのAjaxによって問題を解決参照が、この解決策は、特に信頼できるものではありません。乱数も同じような状況ですので。

おすすめ

転載: www.cnblogs.com/KingJames/p/11243704.html