Получение запроса синтаксического анализа request.body в представлении Django из запроса AJAX POST - PullRequest
0 голосов
/ 29 мая 2019

При попытке разобрать json и обновить db я получаю ошибку декодирования json, предположительно из-за того, что строка json не очищается должным образом?

Пример результата

title=casdkj&paste%5B0%5D%5Barguments%5D%5Bcenter%5D%5B%5D=0&paste%5B0%5D%5Barguments%5D%5Bcenter%5D%5B%5D=0&paste%5B0%5D%5Barguments%5D%5Bradius%5D=0&paste%5B0%5D%5BtoString%5D=draw.circle&csrfmiddlewaretoken=JlcoPVmr1mexHy0GzKRRZNKNOIt1Z4M8mlafJSydBHo0sVP3q4yZdOUiDsZps9U0

Фрагмент AJAX

          $.ajax({
            url: 'paste/',
            type: 'POST',
            headers:{
              "X-CSRFToken": getCookie('csrftoken')
            },
            // data: data,
            data: JSON.stringify(data),
            contentType: "application/json",
            complete: function(token) {

Вид Джанго

def paste(request):
    if request.method == 'POST':
        body = json.loads(request.body.decode('utf-8'))

        p = Pastes.objects.create(
            title=body['title'],
            user=request.user.id,
            paste=body['paste']
        )
        p.save()

        return HttpResponse(
            json.dumps({'result': 'OK',}),
            content_type="application/json"
        )

Ошибка

json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
...