takahe/core/middleware.py
2022-11-18 00:09:04 -07:00

30 lines
728 B
Python

from core.models import Config
class AlwaysSecureMiddleware:
"""
Locks the request object as always being secure, for when it's behind
a HTTPS reverse proxy.
"""
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
request.__class__.scheme = "https"
response = self.get_response(request)
return response
class ConfigLoadingMiddleware:
"""
Caches the system config every request
"""
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
Config.system = Config.load_system()
response = self.get_response(request)
return response