jQuery AJAX, данные json становятся ключевыми в Django, невозможно проанализировать данные

#jquery #ajax #django #json

#jquery #ajax #django #json

Вопрос:

У меня есть следующий код, использующий json2 Крокфорда для преобразования объекта в данные json.

с помощью chrome dev tool анализируемая строка "{"query":"asd"}" .

Однако на стороне сервера django я продолжаю получать исключение при попытке декодировать post данные json. Оказывается, проанализированная строка json стала ключом в словаре.

Запрос dict из POST стал таким: {u'{"query":"asd"}': [u'']} данные json стали ключом, а значение стало пустой строкой.

Есть ли способ исправить это? таким образом, результатом будут обычные данные json, когда сервер их получит.

     // convert object to JSON data
    var jsonQuery = JSON.stringify(prod_query); 

    $.ajax({
        type: 'POST',
        url: '/company/product/item_search.json/',
        data: jsonQuery,
        success: //do stuff
                   }
        });
    }
});
  

представление python

 query = simplejson.loads(request.POST)
  

Ответ №1:

Вы хотите перейти request.raw_post_data к simplejson.loads .