我正在尝试在 Sinatra 中设置脱机机架,但设置时遇到问题。在 Rails 中这很容易,但在 Sinatra 中没有找到任何示例......
问问题
521 次
1 回答
1
基本上,在您的config.ru
, 映射/application.manifest
到Rack::Offline
. (如果您不熟悉使用config.ru
Sinatra 应用程序,请查看Sinatra 文档的这一部分。)这是一个示例,它缓存了 directory 下的所有文件public
:
require 'your-app'
require 'rack/offline'
map "/application.manifest" do
offline = Rack::Offline.new :cache => true, :root => "public" do
# Cache all files under the directory public
Dir[File.join(settings.public, "**/*")].each do |file|
cache file.sub(File.join(settings.public, ""), "")
end
# All other files should be downloaded
network '/'
end
run offline
end
map "/" do
run Sinatra::Application
end
请记住manifest="/application.manifest"
在您的html
标签中设置,您应该一切顺利。您应该查看rack-offline 的 README以获得更多文档和它如何工作的解释。
于 2011-04-02T07:48:17.133 回答