Найти - Пользователи
Полная версия: Точка с запятой в параметре POST запроса
Начало » Django » Точка с запятой в параметре POST запроса
1
tibs
Отправляю POST запрос с такими параметрами (так отображается в Firebug):


report_id=1&comment=&report_params={"hours":"Actual","quarter":"8","availableColumns":["Manager","Cost Center"],"dependentColumns":[],"filters":{"Manager":["Ivan; Ivanov"]}}

В ответе получаю 500 ошибку:

Exception Type: JSONDecodeError at /reports/add_report_task/
Exception Value: Unterminated string starting at: line 1 column 121 (char 121)
Request information:
GET: No GET data

POST:
comment = u''
Ivanov“]}} = u''
report_params = u'{”hours“:”Actual“,”quarter“:”8“,”availableColumns":,“dependentColumns”:,“filters”:{“Manager”:["Ivan'
report_id = u'1'

POST параметры совершенно другие. Это все наверное из-за точки с запятой? Подскажите, пожалуйста, как исправить эту проблему.
FishHook
Каким образом этот POST вообще получаете?
tibs
FishHook
Каким образом этот POST вообще получаете?
Форма с выбором колонок и фильтров.
FishHook
Код покажите!
tibs
прикрепил

UPD: такая же проблема возникает и с ‘&’
nnmware
А зачем Вы к formdata прибавляете еще report_id=1&comment=& и параметры отчета?
Что мешает их добавить в formdata, кидать просто массив в ПОСТЕ и на стороне сервера разобрать?
И stringify так понимаю тогда не надо.
Названия ключей пересекаются?
tibs
nnmware
А зачем Вы к formdata прибавляете еще report_id=1&comment=& и параметры отчета?Что мешает их добавить в formdata, кидать просто массив в ПОСТЕ и на стороне сервера разобрать?И stringify так понимаю тогда не надо.Названия ключей пересекаются?
Тут мне надо сказать, что это код не мой, и я просто разместил объяву.. ))

Такая архитектура у проекта. Раньше параметры отчета сохранялись в базе данных, а теперь передаются в ПОСТ запросе, ну и логичнее вроде передать одним параметром JSON, а потом его уже разобрать?
nnmware
Конечно логичнее передать одним ПОСТом.
Но если нет варианта со скидыванием всего в один словарь- надо Вам просто курить доки, как правильно report_params сериализовать для передачи, чтобы спецсимволы строку не разбивали. то что строка запроса не такая должна быть- однозначно. Я просто не сталкивался сам с таким, навскидку точно не скажу, ибо не знаю.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB