ruby-on-rails – Rails’public’文件夹中文件的自定义内容类型
发布时间:2020-12-17 03:11:48 所属栏目:百科 来源:网络整理
导读:对于存储在 ruby-on-rails应用程序的’public’文件夹中的资产,是否可以在运行’script / server’时更改’Content-Type’?例如,我正在尝试创建支持离线模式的 HTML5应用程序,并且具有“offline.manifest”.当我跑: curl -I localhost:3000/offline.mainfe
对于存储在
ruby-on-rails应用程序的’public’文件夹中的资产,是否可以在运行’script / server’时更改’Content-Type’?例如,我正在尝试创建支持离线模式的
HTML5应用程序,并且具有“offline.manifest”.当我跑:
curl -I localhost:3000/offline.mainfest 返回以下标头信息: HTTP/1.1 200 OK ... Content-Type: text/plain ... 但是,HTML5规范要求: HTTP/1.1 200 OK ... Content-Type: text/cache-manifest ... 解决方法
从Rails 5开始,将其放入初始化程序中:
Rack::Mime::MIME_TYPES[".manifest"]="text/cache-manifest" 我不确定其他版本. 注:它不会起作用Mime :: Type.register“text / cache-manifest”,:manifest – 这只适用于rails控制器. 我不确定Rails :: Rack :: Static是否在Rails的任何地方使用. Rails使用ActionDispatch :: Static,它不会从Rails :: Rack :: Static或类似的东西继承.但它确实使用了Rack的几个东西,包括Rack :: Mime,它(我认为?)与Mime完全分开,Mime在Rails的其他地方使用. ActionDispatch :: Static的源代码:https://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/middleware/static.rb (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |