Skip to content

Commit 313777e

Browse files
authored
Merge pull request #108 from lionick/add_doseq_upstream
Support multiple values for a key param
2 parents 0c48026 + 4b325b4 commit 313777e

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/idpyoidc/message/__init__.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,11 @@ def set_defaults(self):
7979
for key, val in self.c_default.items():
8080
self._dict.setdefault(key, val)
8181

82-
def to_urlencoded(self):
82+
def to_urlencoded(self, doseq=False):
8383
"""
8484
Creates a string using the application/x-www-form-urlencoded format
8585
86+
:doseq: If set to true, key=value pairs separated by '&' are generated for each element of the value sequence for the key.
8687
:return: A string of the application/x-www-form-urlencoded format
8788
"""
8889

@@ -135,15 +136,15 @@ def to_urlencoded(self):
135136
params.append((key, str(val)))
136137

137138
try:
138-
return urlencode(params)
139+
return urlencode(params, doseq=doseq)
139140
except UnicodeEncodeError:
140141
_val = []
141142
for k, v in params:
142143
try:
143144
_val.append((k, v.encode("utf-8")))
144145
except TypeError:
145146
_val.append((k, v))
146-
return urlencode(_val)
147+
return urlencode(_val, doseq=doseq)
147148

148149
def serialize(self, method="urlencoded", **kwargs):
149150
"""

0 commit comments

Comments
 (0)