Вы на самом деле не отправляете JSON на сервер.Когда вы передаете объект jQuery.ajax
(или оболочкам get
/ post
), он будет сериализован в переменные GET или POST, а не в JSON, поэтому ваш объект будет преобразован во что-то вроде этого:
a=text&b=othertext&c[]=texta&c[]=textb
Если вы хотите передать весь объект как JSON, вы можете преобразовать его самостоятельно, вызвав JSON.stringify
(вам нужно будет включить json2.js для браузеров, которые не поддерживаютобъект JSON
изначально).Затем вы можете обернуть JSON-кодированную строку в карту любым именем, которое вам нужно:
jQuery.post(url, { json: JSON.stringify({a:'text', ...}) }, ...);
На стороне сервера вы можете получить доступ к тексту JSON, вызвав self.request.get("json")
.Затем вам нужно будет проанализировать строку JSON для извлечения значений.Я не знаю много о Python, но, видимо, вам просто нужно импортировать django.utils.simplejson
и позвонить simplejson.loads(json)
.