1

ブラウザとプロキシ キャッシュは、URL をキャッシュ キーとして使用します。pjax では、URL は部分的な Pjax ページと完全なページの両方を要求するために使用されるため、両方の応答が同じキーでキャッシュされます。ページ全体ではなく部分ページが読み込まれる可能性があるため、明らかにエラーが発生します。

それを解決するにはどうすればよいでしょうか?

私が考えることができる唯一のことは、URLにpjaxタグを追加することです。pjaxはそれを行う組み込みの方法を提供していますか?

ありがとう!

ps 私は Rails を使用しています。念のため、誰かが Rails で非常にエレガントな方法を実行している場合に備えています。

4

2 に答える 2

2

jquery-pjax_pjax=trueはXMLHttpRequestのURLに追加します。

別のアプローチは、URLごとに1つのページのみを持つことです。

これは、jquery-pjaxで、ページ全体を送信してfragmentオプションを使用するだけで実現できます。

より柔軟なアプローチは、最小限のページのみを送信し、AJAXを使用してすべての共有サイトコンテンツ(ページバナー、ナビゲーション、広告など)を追加することです。ほとんどのAJAXは、最初のページの読み込みにのみ適用され、その後pjax引き継がれます。これがHTMLDecorのアプローチです。

于 2012-10-13T05:27:32.043 に答える
0

Rails4.0にはTurbolinksが付属しています。Turbolinksは、サーバーからページ全体をロードし、ページをリロードする代わりにページの本文とタイトルを更新することを除いて、pjaxと非常によく似ています。サーバー側での変更は必要ありません。サーバーは常にフルページを返します。これにより、HTTPキャッシングは簡単になります。

于 2012-12-21T05:12:47.587 に答える