I am filtering requests to determine the browsers used by visitors and
eventually give him back a warning about supported browsers ...
In the application_controller.rb I have a filter

before_filter :ensure_browser_supported

and a method  to test the user_agent  ( iE, Firefox, Safari, Chrome
and their versions...)

  def ensure_browser_supported
    if html? && cookies[:browser_unsupported] != 'false' &&
user_agent.unsupported? && session[:browser_unsupported].blank?
      session[:return_to] = request.fullpath
      render :template => "/layouts/unsupported_browser", :layout =>
false
    end
  end

Doing some testing on external API request I'll have to answer, I sent
a curl request and discover that it obviously failed passing the test
as the user agent is
"HTTP_USER_AGENT"=>"curl/7.19.7 (universal-apple-darwin10.0)
but I guess that a request from a remote server will have another
user_agent  .... am I right ?

I can add this user agent in the list , but is there any way to
differentiate request from browsers and from remote servers before
filtering the browsers...  what could I check in the request ?

thanks for your feedback




-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to