Подтвердить что ты не робот

В чем разница между http_basic_authenticate_with AND authenticate_or_request_with_http_basic?

В чем разница между

http_basic_authenticate_with()

и

authenticate_or_request_with_http_basic()

методы?

Спасибо за ваше полное объяснение.

4b9b3361

Ответ 1

Из того, что я могу понять из документов, http_basic_authenticate_with действует как фильтр до, который принимает имя и пароль, такие как

http_basic_authenticate_with :name => "dhh", :password => "secret", :except => :index

Принимая во внимание, что authenticate_or_request_with_http_basic принимает блок, позволяющий вам вставить некоторый код, чтобы определить, должны ли они быть аутентифицированы (документация). Например

before_filter :authenticate

def authenticate
  authenticate_or_request_with_http_basic('Administration') do |username, password|
    ActiveSupport::SecurityUtils.secure_compare(username, "admin") &&
    ActiveSupport::SecurityUtils.secure_compare(password, "password")
  end
end