Ruby on rails RESTAPI分页和客户端缓存

Ruby on rails RESTAPI分页和客户端缓存,ruby-on-rails,http,caching,microformats,Ruby On Rails,Http,Caching,Microformats,使用Rails,我有一个HTTP端点,它返回一个以JSON格式链接到播放列表的记录(媒体文件)数组 客户端缓存通过检查播放列表的日期来完成,并在/playlist/id/media_files.json响应中使用Rails“stale”(@playlist)”生成适当的etag 现在,我想实现分页,但在某种程度上,尝试保持客户端缓存 我是否可以采取一些明智的方法,或者我是否被迫使用200来响应所有请求,并始终将数据通过线路传送到客户端 如何在API中处理分页(服务器、客户端)缓存?当我在Rail

使用Rails,我有一个HTTP端点,它返回一个以JSON格式链接到播放列表的记录(媒体文件)数组

客户端缓存通过检查播放列表的日期来完成,并在
/playlist/id/media_files.json
响应中使用Rails“
stale”(@playlist)
”生成适当的etag

现在,我想实现分页,但在某种程度上,尝试保持客户端缓存

我是否可以采取一些明智的方法,或者我是否被迫使用200来响应所有请求,并始终将数据通过线路传送到客户端


如何在API中处理分页(服务器、客户端)缓存?

当我在Rails中使用页面缓存时,我必须处理分页,我只是将页面放在URL中。例如,如果我有这样一个资源:

resource :users
我将其更改为(添加新行):

我不确定您使用的客户端是什么,但这里的想法是您希望单独缓存各个页面。由于该页面现在是URL的一部分,因此您可以缓存每个页面,您的问题应该得到解决:)

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