From 0073f9ea6821a43aea9437707586af04dc0cbed2 Mon Sep 17 00:00:00 2001 From: Gareth Coles Date: Thu, 29 Mar 2018 10:52:48 +0100 Subject: Attempt to fix HTTPS and more OAuth issues --- pysite/route_manager.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'pysite/route_manager.py') diff --git a/pysite/route_manager.py b/pysite/route_manager.py index 14ae22db..24d09ee2 100644 --- a/pysite/route_manager.py +++ b/pysite/route_manager.py @@ -4,7 +4,7 @@ import inspect import logging import os -from flask import Blueprint, Flask +from flask import Blueprint, Flask, _request_ctx_stack from flask_dance.contrib.discord import make_discord_blueprint from flask_sockets import Sockets @@ -76,6 +76,17 @@ class RouteManager: self.load_views(self.ws_blueprint, "pysite/views/ws") self.sockets.register_blueprint(self.ws_blueprint, url_prefix="/ws") + self.app.before_request(self.https_fixing_hook) # Try to fix HTTPS issues + + def https_fixing_hook(self): + """ + Attempt to fix HTTPS issues by modifying the request context stack + """ + + if _request_ctx_stack is not None: + reqctx = _request_ctx_stack.top + reqctx.url_adapter.url_scheme = PREFERRED_URL_SCHEME + def run(self): from gevent.pywsgi import WSGIServer from geventwebsocket.handler import WebSocketHandler -- cgit v1.2.3