1

我的 mime_types.rb 文件有

Mime::Type.register "application/myfoo", :myfoo

我有一个文件public/a/test.myfoo

浏览以localhost:3000/a/test.myfoo将文件返回为text/plain.

我正在使用 Chrome 22,Accept 标头是

Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

我将 Rails 3.2.8 与开发 Web 服务器一起使用。我错过了什么吗?

4

2 回答 2

0

确保在您的控制器中对应的操作看起来像这样(我没有测试它 - 只是为了给你一个方向):

render :file => @somedir + "/test.myfoo", :content_type => Mime::myfoo

具体来说,:content_type论据是最重要的。

于 2012-10-16T00:58:26.033 回答
0

从 Rails 5 开始,将其放入初始化程序中可以:

Rack::Mime::MIME_TYPES[".manifest"]="text/cache-manifest"

我不确定其他版本。

Mime::Type.register "text/cache-manifest", :manifest仅适用于 Rails 控制器。

来源ActionDispatch::Statichttps ://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/middleware/static.rb

于 2017-08-02T20:27:26.283 回答