Как избежать замены знаков + пробелами в параметрах GET (Django)? - PullRequest
0 голосов
/ 19 февраля 2020

Мне нужно было передать адреса электронной почты в параметрах GET, но я заметил, что знаки + заменяются пробелами, поэтому URL-адрес, такой как example.com?param=myemail+alias@example.com, при захвате через что-то вроде request.GET.get("param", None) будет давать * 1003. *.

На данный момент я выбрал возможно грубый и рискованный способ replace() пробелов со знаками +, но я хотел бы знать: есть ли лучший способ передачи адресов электронной почты в параметрах GET (что будет работать с Django 3 +)?

1 Ответ

2 голосов
/ 19 февраля 2020

Вы должны URL кодировать их.

import urllib.parse
urllib.parse.quote_plus({'email': 'myemail+alias@example.com'})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...