[FIX] http: force protocol when missing in URL

This commit is contained in:
Olivier Dony
2017-06-15 16:23:35 +02:00
parent 4acfe3577b
commit eaa3682bb6
+2
View File
@@ -163,6 +163,8 @@ def redirect_with_hash(url, code=303):
# See extensive test page at http://greenbytes.de/tech/tc/httpredirects/
if request.httprequest.user_agent.browser in ('firefox',):
return werkzeug.utils.redirect(url, code)
if urlparse.urlparse(url, scheme='http').scheme not in ('http', 'https'):
url = 'http://' + url
url = url.replace("'", "%27").replace("<", "%3C")
return "<html><head><script>window.location = '%s' + location.hash;</script></head></html>" % url