Module: Webhookdb::Service::Middleware
- Defined in:
- lib/webhookdb/service/middleware.rb
Defined Under Namespace
Classes: CopyCookieToExplicitHeader, RequestLogger, SessionLength, SessionReader
Class Method Summary
collapse
Class Method Details
.add_common_middleware(builder) ⇒ Object
36
37
38
39
40
|
# File 'lib/webhookdb/service/middleware.rb', line 36
def self.add_common_middleware(builder)
builder.use(Rack::ContentLength)
builder.use(Rack::Chunked)
builder.use(Sentry::Rack::CaptureExceptions)
end
|
.add_cors_middleware(builder) ⇒ Object
23
24
25
26
27
28
29
30
31
32
33
34
|
# File 'lib/webhookdb/service/middleware.rb', line 23
def self.add_cors_middleware(builder)
builder.use(Rack::Cors) do
allow do
origins(*Webhookdb::Service.cors_origins)
resource "*",
headers: :any,
methods: :any,
credentials: true,
expose: ["ETag", Webhookdb::Service::AUTH_TOKEN_HEADER]
end
end
end
|
.add_dev_middleware(builder) ⇒ Object
42
43
44
45
|
# File 'lib/webhookdb/service/middleware.rb', line 42
def self.add_dev_middleware(builder)
builder.use(Rack::ShowExceptions)
builder.use(Rack::Lint)
end
|
.add_middlewares(builder) ⇒ Object
12
13
14
15
16
17
18
19
20
21
|
# File 'lib/webhookdb/service/middleware.rb', line 12
def self.add_middlewares(builder)
self.add_cors_middleware(builder)
self.add_common_middleware(builder)
self.add_dev_middleware(builder) if Webhookdb::Service.devmode
self.add_ssl_middleware(builder) if Webhookdb::Service.enforce_ssl
self.add_session_middleware(builder)
self.add_security_middleware(builder)
Webhookdb::Service::Auth.add_warden_middleware(builder)
builder.use(RequestLogger)
end
|
.add_security_middleware(_builder) ⇒ Object
Add security middleware to builder
.
60
61
62
63
|
# File 'lib/webhookdb/service/middleware.rb', line 60
def self.add_security_middleware(_builder)
end
|
.add_session_middleware(builder) ⇒ Object
Add middleware for maintaining sessions to builder
.
.add_ssl_middleware(builder) ⇒ Object
47
48
49
|
# File 'lib/webhookdb/service/middleware.rb', line 47
def self.add_ssl_middleware(builder)
builder.use(Rack::SslEnforcer, redirect_html: false)
end
|