Springでのブラウザキャッシュの制御


私たちは普段、ページでurlリクエストを送信するとき、ネットを通じてサーバーに行ってこのリソースを取得します.ネットが速いときは大丈夫ですが、ネットがもう少し悪いと、リソース取得の遅延が長くなり、ユーザー体験が大幅に低下します.しかし、キャッシュを使用してこの問題を解決することができます.
リソースを要求すると、応答ヘッダが返されます.このとき、応答ヘッダに期限切れ時間を追加すると、期限切れが切れない限り、ブラウザはネットワークを介してリソースを再読み込みするのではなく、キャッシュを直接読み取ります.スプリングのコントローラでこれを行うことができます.
静的ページジャンプのコントローラにHttpServeretResponse responseパラメータを追加し、応答ヘッダの遅延時間を設定します. 
	response.setDateHeader("Expires", System.currentTimeMillis()+1*60*60*1000);

   
 このように,2回目にこのページにアクセスすると,このコントローラを介してネットワークから取得するのではなく,ブラウザキャッシュから直接取得することで,リソースへのアクセス速度が大幅に向上する.
 ブラウザはurlにアクセスするとき、まずブラウザのキャッシュスペースにアクセスします.このレコードがあるかどうか、ある場合は、時間をチェックして、期限が切れて、読み直して、期限が切れていないので、キャッシュから直接持ってきて、このキャッシュレコードがなければ、urlにアクセスします.しかし、ブラウザがキャッシュから読み出すことを望んでいないリソースもあります.例えば、私たちが普段よく使っている検証コードなどです.このときurlを要求するウェブサイトの後ろにランダムを繰り返さないフィールドを追加すると、ブラウザはキャッシュからリソースを読み込まない.