Я настраиваю логин с гемом devise_ldap_authentication.Иногда сервер LDAP не работает, и я получаю следующую ошибку «Net :: LDAP :: Ошибка в / users / sign_in Тайм-аут соединения - указанный пользователем тайм-аут».
Я пытался несколькими способами справиться с возникшей ошибкой, ноя не смог.
Контроллер действий:
class SessionsController < Devise::SessionsController
def create
begin
resource = warden.authenticate!(:scope => resource_name, :recall => "#{controller_path}#new")
set_flash_message(:notice, :signed_in) if is_navigational_format?
sign_in(resource_name, resource)
redirect_to root_path
rescue Net::LDAP::LdapError
respond_to do |format|
format.html {redirect_to new_user_session_path, :notice => $!.to_s}
format.json {render json: $!.to_s}
end
end
end
end
Я хотел бы проверить сервер соединений и, если он не работает, аутентифицировать пользователей с локальными учетными данными.