Использование request.env Inside Rails Middleware - PullRequest
0 голосов
/ 25 июня 2011

Я пытаюсь использовать переменную запроса Пассажира в моем промежуточном программном обеспечении Rails, чтобы я мог отправить информацию в стратегию OmniAuth:

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :casmate, {
    :setup => true,
    :dn    => request.env['SSL_CLIENT_S_DN']
  }
end

но «запрос» не распознается в промежуточном программном обеспечении. Есть ли способ сделать это в промежуточном программном обеспечении или есть способ вызвать промежуточное программное обеспечение в контроллере и передать те же символы (: casmate,: setup,: dn)?

Спасибо за вашу помощь.

1 Ответ

2 голосов
/ 28 июня 2011

Я не знаю, как использовать переменную request.env в инициализаторе промежуточного программного обеспечения, но если вы хотите отправить какую-либо информацию, вы можете сделать это в хэше опций:

request.env['omniauth.strategy'].options[:dn] = request.env['SSL_CLIENT_S_DN']

внутривашего контроллера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...