Значение self.request.path_info
- это не полный URL-адрес, который необходимо передать до urlparse()
для правильного извлечения параметров, в нем отсутствуют параметры запроса, поэтому у вас нет параметров.Он также не работает внутри обработчика, возможно, вы внесли в него некоторые дополнительные изменения.
Чтобы получить параметры, используя ваш parse_url()
, передайте полный URL:
url = self.request.url
params = parse_url(url)
Но вы должны заметить, что все это довольно ненужно, webapp2
уже содержит анализатор параметров, за исключением того, что он возвращает MultiDict .От Запрос данных :
params
Словарь-подобный объект, объединяющий переменные GET и POST.
Все, что вам нужно сделать, это преобразовать его в реальный диктант, идентичный тому, который производит parse_url()
:
self.response.write(dict(self.request.params))