class Rack::Auth::NginxOmniauthAdapter
Constants
- VERSION
Public Class Methods
new(app, auth_host:, callback_path: '/_auth/callback')
click to toggle source
# File lib/rack/auth/nginx_omniauth_adapter.rb, line 51 def initialize(app, auth_host:, callback_path: '/_auth/callback') @app, @auth_host, @callback_path = app, auth_host, callback_path end
Public Instance Methods
call(env)
click to toggle source
# File lib/rack/auth/nginx_omniauth_adapter.rb, line 55 def call(env) request = Rack::Auth::Request.new @app do |env| https = Net::HTTP.new(@auth_host, 443) https.use_ssl = true req = Net::HTTP::Get.new('/test') req['x-ngx-omniauth-original-uri'] = "https://#{env['HTTP_HOST']}#{env['REQUEST_URI']}" req['cookie'] = env['HTTP_COOKIE'] response = https.request(req) [ response.code.to_i, response.to_hash, [ response.body ] ] end initiate = Initiate.new(request, auth_host: @auth_host, callback_path: @callback_path) Callback.new(initiate, auth_host: @auth_host, callback_path: @callback_path) end