Ruby on Rails
Thursday, September 12, 2013
It's unclear to me why you *wouldn't* want a 500 ISE here. Silently swallowing ArgumentError or NoMethodError is a terrible idea, since it also can obscure real bugs.
On Thursday, 12 September 2013 09:26:18 UTC-5, Paul E. G. Lynch wrote:
-- If you really want that behavior, try:
<%= sanitize(params[:name]) rescue '' %>
--Matt Jones
On Thursday, 12 September 2013 09:26:18 UTC-5, Paul E. G. Lynch wrote:
In this case it is user (hacker, scanner, etc.), not the programmer, who has passed the illegal argument. I don't think that should result in a 500 server error. To avoid that, either the programmer has to check each input parameter to make sure it is a string, or something like sanitize has to make the parameter safe.On Wed, Sep 11, 2013 at 7:21 PM, Robert Walker <li...@ruby-forum.com> wrote:
Paul Lynch wrote in post #1121214:
> If, in your view, you are expecting params[:name] to be a string, butHum. It seems to me that "blowing up" is the right thing to do in this
> actually rails has parsed it into {"."=>"1234"} (or something more
> malicious), then currently
> <%= sanitize(params[:name]) %> blows up because the hash does not
> respond
> the expected methods from the sanitize call.
>
> I could put in code to check that the params values I am sanitizing are
> strings, but it seems like it would be better for sanitize to handle
> that,
> and perhaps just return the empty string if the processing of the input
> raises an exception.
scenario. More precisely an exception should be raised indicating a
programmer mistake of passing an illegal argument to a method expecting
a string.
--
Posted via http://www.ruby-forum.com/.
To view this discussion on the web visit https://groups.google.com/d/
--
You received this message because you are subscribed to a topic in the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/rubyonrails-talk/6P_ .vm57_km8/unsubscribe
To unsubscribe from this group and all its topics, send an email to rubyonrails-ta...@googlegroups.com .
To post to this group, send email to rubyonra...@googlegroups.com .
msgid/rubyonrails-talk/ .c54d51850e1948568b77874beb9f21 e1%40ruby-forum.com
For more options, visit https://groups.google.com/groups/opt_out .
--
Paul Lynch
National Library of Medicine
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/3042ea8d-7b0f-4080-9c95-1fe4202919ea%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment