小编Dim*_*tri的帖子

是否期望这些参数在任何Rails应用程序中总是提高500?

使用以下参数命中rails应用程序

http://example.com/?b=1&b[a]=2
Run Code Online (Sandbox Code Playgroud)

总是让它引发500错误,这似乎是不可捕获的.

例如

它引发了以下错误:

Invalid query parameters: expected Hash (got String) for param `b'
Run Code Online (Sandbox Code Playgroud)

请求永远不会访问Rails应用程序代码.

以下是完整回溯的最后几行:

ActionController::BadRequest (Invalid query parameters: expected Hash (got String) for param `b'):
  rack (1.5.2) lib/rack/utils.rb:127:in `normalize_params'
  rack (1.5.2) lib/rack/utils.rb:96:in `block in parse_nested_query'
  rack (1.5.2) lib/rack/utils.rb:93:in `each'
  rack (1.5.2) lib/rack/utils.rb:93:in `parse_nested_query'
  rack (1.5.2) lib/rack/request.rb:373:in `parse_query'
  actionpack (4.1.4) lib/action_dispatch/http/request.rb:313:in `parse_query'
  rack (1.5.2) lib/rack/request.rb:188:in `GET'
  actionpack (4.1.4) lib/action_dispatch/http/request.rb:274:in `GET'
  actionpack (4.1.4) lib/action_dispatch/http/parameters.rb:16:in `parameters'
  actionpack (4.1.4) lib/action_dispatch/http/filter_parameters.rb:37:in `filtered_parameters'
  actionpack (4.1.4) lib/action_controller/metal/instrumentation.rb:22:in …
Run Code Online (Sandbox Code Playgroud)

rack ruby-on-rails ruby-on-rails-3 ruby-on-rails-4

9
推荐指数
1
解决办法
835
查看次数