0

Rails を使用して、プレイリストにリンクされたレコード (メディア ファイル) の配列を JSON 形式で返す HTTP エンドポイントを作成しました。

stale?(@playlist)クライアント側のキャッシングは、プレイリストの日付をチェックすることによって行われ、/playlist/id/media_files.json応答で Rails の適切な etag を生成します。

今、ページネーションを実装したいと思いますが、クライアント側のキャッシュをある程度維持しようとしています。

私が取ることができるスマートなアプローチはありますか、それともすべてのリクエストに 200 で応答し、常にクライアントにデータを送り込む必要がありますか?

API でページネーション (サーバー、クライアント) キャッシュをどのように処理しますか?

4

1 に答える 1

1

Rails でページ キャッシングを使用していて、ページネーションに対処する必要がある場合は、ページを URL に挿入するだけです。たとえば、次のようなリソースがあるとします。

resource :users

変更します(新しい行を追加します):

get 'users/page/:page', to: 'users#index'
resource :users

どのクライアント側を使用しているかはわかりませんが、ここでのアイデアは、個々のページを個別にキャッシュすることです。ページが URL の一部になったので、各ページがキャッシュされ、問題は解決するはずです :)

于 2013-02-19T17:38:22.173 に答える