Разбор массива объектов, переданных из фронтенда в бэкенде Django на языке python

У меня есть веб-приложение, бэкенд использует Django, фронтенд - обычный HTML5.

Во фронтенде я использую axios для отправки массива объектов через POST запрос.

            axios
            ({
                method: 'POST',
                url: test_url,
                data: {
                    [{title:1, isbn:1234},{title:2, isbn:5678}]
                }
            })

Однако в бэкенде мне не удалось разобрать данные, отправленные из фронтенда.

def test_url(request):
    body = request.body.decode("utf-8")
    json_acceptable_string = body.replace("'", "\"")
    d = json.loads(json_acceptable_string)
    title = d.get('title')
    ...

Я получил ошибку декодирования json в бэкенде.

Как я могу легко разобрать массив объектов, отправленных из фронтенда, в python?

вы можете попробовать что-то вроде этого

https://docs.djangoproject.com/en/4.0/ref/request-response/#django.http.QueryDict.getlist

js
axios
({
    method: 'POST',
    url: test_url,
    data: {
        "array_list" : [{"title": 1, "isbn": 1234}, {"title": 2, "isbn": 5678}]
    }
})

python
def test_url(request):
    data = request.POST
    array = data.getlist('array_list')
Вернуться на верх