Spec-Zone.ru › Ruby on Rails 4.2

module ActionController::ForceSSL::ClassMethods

Публичные методы экземпляра

force_ssl(options = {}) Показать исходный код
# File actionpack/lib/action_controller/metal/force_ssl.rb, line 62
def force_ssl(options = {})
  action_options = options.slice(*ACTION_OPTIONS)
  redirect_options = options.except(*ACTION_OPTIONS)
  before_action(action_options) do
    force_ssl_redirect(redirect_options)
  end
end

Принудительно перенаправляет запрос для этого конкретного контроллера или указанных действий на протокол HTTPS.

Если по какой-либо причине (например, в процессе разработки) необходимо отключить эту функцию, можно использовать условие :if или :unless.

class AccountsController < ApplicationController
  force_ssl if: :ssl_configured?

  def ssl_configured?
    !Rails.env.development?
  end
end

Параметры URL

Можно передать следующие параметры, чтобы повлиять на URL перенаправления:

  • host - Перенаправление на другой доменное имя

  • subdomain - Перенаправление на другой поддомен

  • domain - Перенаправление на другой домен

  • port - Перенаправление на другой порт

  • path - Перенаправление на другой путь

Параметры перенаправления

Можно передать следующие параметры, чтобы повлиять на статус перенаправления и ответ:

  • status - Перенаправление с пользовательским статусом (по умолчанию 301 Moved Permanently)

  • flash - Установка всплывающего сообщения при перенаправлении

  • alert - Установка предупреждающего сообщения при перенаправлении

  • notice - Установка информационного сообщения при перенаправлении

Параметры действия

Можно передать следующие параметры, чтобы повлиять на вызов before_action:

  • only - Вызов обработчика должен выполняться только для этого действия

  • except - Вызов обработчика должен выполняться для всех действий, кроме этого

  • if - Символ, обозначающий метод экземпляра или прок; сам обработчик

    will be called only when it returns a true value.
  • unless - Символ, обозначающий метод экземпляра или прок; сам обработчик

    will be called only when it returns a false value.

© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API