次のような状況があります。
ページ A: /something/new
への投稿: /something/create
ページ B へのリダイレクト: /something/edit
これまでのところ、すべて機能しています。さて、/something/edit は、AJAX を介してさまざまなことを実行できるページなので、最初は空っぽで、使用すると、いわば「いっぱい」になります。いつでもリロードすると、サーバーによってレンダリングされたすべてが返されます。
ただし、リダイレクトされてページに変更を加えた後、[戻る] を押してからもう一度 [進む] を押した場合、ブラウザー (少なくとも Chrome) はサーバーに再度アクセスしません (304 になる可能性のある Etag チェックでさえ、何もしません)。 )、キャッシュからページ B をロードするだけで、空で表示され、非常に混乱する可能性があります...
最初にページ B をレンダリングするとき、サーバーは次のヘッダーで応答します。
Cache-Control:must-revalidate, private, max-age=0
Connection:Keep-Alive
Content-Length:18577
Content-Type:text/html; charset=utf-8
Date:Thu, 02 Aug 2012 20:19:59 GMT
Server:WEBrick/1.3.1 (Ruby/1.9.3/2012-04-20)
Set-Cookie: (redacted)
X-Miniprofiler-Ids:["ma2x1rjc0kgrijiug5dj","nnmovj2wz1lux85jwhd3"]
X-Request-Id:2dd3fa62799beadc1b39b8db1aa5f45f
X-Runtime:0.245014
X-Ua-Compatible:IE=Edge
Etag など、気になるようなものは見当たりません。また、「Cache-control」を正しく解釈している場合(私はあまり経験していませんが)、キャッシュしないように言っているようです...
この動作を回避する方法はありますか?また、戻る/進む時にブラウザがサーバーに再度アクセスするようにする方法はありますか?
ありがとう!
ダニエル