http_basic_authenticate_with未显示身份验证提示并将错误输出到服务器日志。为什么?

时间:2014-09-04 15:01:05

标签: ruby-on-rails ruby ruby-on-rails-4

我正在研究Ruby on Rails'入门'指南。在第9节中,我们尝试向控制器添加基本身份验证,以禁止更新博客文章和删除博客评论等操作。

指南说要在article_controller类的顶部使用以下代码

http_basic_authenticate_with name: "dhh", password: "secret", except: [:index, :show]

这样做,然后尝试更新文章(或任何阻止的操作)导致浏览器上似乎没有任何事情发生(没有身份验证提示)但是当在终端中查看rails server命令的输出时,我得到以下内容请求数据重复,直到我关闭页面:

Started GET "/articles/3/edit" for 127.0.0.1 at 2014-09-04 15:41:39 +0100
Processing by ArticlesController#edit as HTML
Parameters: {"id"=>"3"}
Filter chain halted as #<Proc:0x007fc5d915e6f8@/Users/Ben/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/actionpack-4.1.5/lib/action_controller/metal/http_authentication.rb:71> rendered or redirected
Completed 401 Unauthorized in 1ms (ActiveRecord: 0.0ms)

到目前为止,我已经遵循了这封信的指南而没有任何问题。我在网上注意到了一些类似的问题而没有答案。它们都不包括服务器的输出,所以我希望这可能会给出原因的线索。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

有时我会因为导轨入门指南中的错误而遇到问题。我经常使用以下代码到http basic auth:

before_filter :require_http_basic_auth, :except => [:index, :show]

def require_http_basic_auth
  # code
end