Django - Ошибка при переходе от GET к POST

У меня есть приложение react/django, которое отлично работает, когда запрос является GET-запросом. Например, в части React у меня есть следующее

sendRequestParameters(url) {
        axios({
            url: url,
            method: 'get',
            headers: {
                'X-CSRFToken': 'csrf_token',
                'Accept': 'application/json',
                'Content-Type': 'application/json;charset=UTF-8',
            },
            params:{
                'TECHNOLOGY': JSON.stringify(this.state.technologySelectedValue),
                // more parameters here, all in the same format
            },
            paramsSerializer: function(params) {
                return qs.stringify(params, {arrayFormat: 'repeat'})
            }
        }).then((response ) => {  
           console.log(response.data);
        }).catch((error) => {
            console.log(error)
        }) 
    }

Затем, в бэкенде, я получаю параметры и возвращаю их (эта функция вызывается в другой функции, где используются возвращенные параметры, поэтому есть оператор return).

def extractParameters(request):
    TECHNOLOGY = json.loads(request.GET.get('TECHNOLOGY'))
    # more parameters extracted here, same format

    return TECHNOLOGY etc.

Все это работает нормально. Однако мне нужно перейти на POST-запросы, и когда я делаю две небольшие модификации для этого, я получаю ошибку. Во внешнем запросе с axios я изменяю method: 'get' на method: 'post'. Затем, в бэкенде, я изменяю TECHNOLOGY = json.loads(request.GET.get('TECHNOLOGY')) на TECHNOLOGY = json.loads(request.POST.get('TECHNOLOGY'))

Это дает мне следующую ошибку в терминале

TECHNOLOGY = json.loads(request.POST.get('TECHNOLOGY'))
raise TypeError(f'the JSON object must be str, bytes or bytearray, '
TypeError: the JSON object must be str, bytes or bytearray, not NoneType

Все, что я делаю, это простое изменение GET на POST, и это вызывает эту ошибку. Я читал документацию по Django, но застрял. Любая помощь будет оценена по достоинству.

Я предполагаю, что вы используете DRF (Django REST Framework). Вы можете получить его, используя data:

TECHNOLOGY = request.data.get('TECHNOLOGY')
Вернуться на верх