diff options
author | Michael Koziarski <michael@koziarski.com> | 2008-06-27 11:29:04 +0300 |
---|---|---|
committer | Michael Koziarski <michael@koziarski.com> | 2008-07-07 07:31:49 +0200 |
commit | 2f4aaed7b3feb3be787a316fab3144c06bb21a27 (patch) | |
tree | 77604663cd08612a2bbacf1901662ce7ececcf69 /actionpack/lib/action_view | |
parent | afa0c7f728a8896c9ee9d932033e08a4c99dfd50 (diff) | |
download | rails-2f4aaed7b3feb3be787a316fab3144c06bb21a27.tar.gz rails-2f4aaed7b3feb3be787a316fab3144c06bb21a27.tar.bz2 rails-2f4aaed7b3feb3be787a316fab3144c06bb21a27.zip |
Disable the Accept header by default
The accept header is poorly implemented by browsers and causes strange errors when used on public sites where crawlers make requests too. You should use formatted urls (e.g. /people/1.xml) to support API clients. Alternatively to re-enable it you need to set:
config.action_controller.use_accept_header = true
A special case remains for ajax requests which will have a javascript format for the base resource (/people/1) if the X-Requested-With header is present. This lets ajax pages still use format.js despite there being no params[:format]
Diffstat (limited to 'actionpack/lib/action_view')
-rw-r--r-- | actionpack/lib/action_view/base.rb | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/actionpack/lib/action_view/base.rb b/actionpack/lib/action_view/base.rb index 92501133a6..66892fdabf 100644 --- a/actionpack/lib/action_view/base.rb +++ b/actionpack/lib/action_view/base.rb @@ -256,13 +256,9 @@ module ActionView #:nodoc: template_path.split('/').last[0,1] != '_' end - # Returns a symbolized version of the <tt>:format</tt> parameter of the request, - # or <tt>:html</tt> by default. - # - # EXCEPTION: If the <tt>:format</tt> parameter is not set, the Accept header will be examined for - # whether it contains the JavaScript mime type as its first priority. If that's the case, - # it will be used. This ensures that Ajax applications can use the same URL to support both - # JavaScript and non-JavaScript users. + # The format to be used when choosing between multiple templates with + # the same name but differing formats. See +Request#template_format+ + # for more details. def template_format return @template_format if @template_format |