From b7c7c0f0ba8ed0f9a5aae941889e2f6616085926 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9ophile=20Bastian?= Date: Tue, 14 Apr 2020 23:47:08 +0200 Subject: [PATCH] Service URL: keep blank GET arguments When a service URL contains GET arguments with no associated value, eg http://example.com/?foo=a&bar only the arguments with value are kept, yielding http://example.com/?foo=a&ticket= losing `bar` in the process --- cas_server/utils.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cas_server/utils.py b/cas_server/utils.py index 7e9de27..f2bb4db 100644 --- a/cas_server/utils.py +++ b/cas_server/utils.py @@ -259,7 +259,7 @@ def update_url(url, params): value = value.encode('utf-8') params[key] = value url_parts = list(urlparse(url)) - query = dict(parse_qsl(url_parts[4])) + query = dict(parse_qsl(url_parts[4], keep_blank_values=True)) query.update(params) # make the params order deterministic query = list(query.items())