Пользовательские заголовки отсутствуют в запросе, полученном в Django

Я работаю над проектом ReactJS/Django, где мне нужно отправить несколько пользовательских заголовков в Django из React.

Проблема: Пользовательские заголовки отсутствуют, когда запрос приходит в Django
. Добавлены пользовательские заголовки - Token и User-Type

Приведите код ниже.

export async function post(url, requestBody = {}, auth_req=true) {
    const token = window.sessionStorage.getItem("Token");
    const user_type = window.sessionStorage.getItem("User-Type");
    console.log("Header Data : ",token, user_type);
    try{
        const requestOptions = {
            method: 'POST',
            headers: {
                "Content-Type": 'application/json',
                "Token" : auth_req ? token : null,
                "User-Type" : auth_req ? user_type : null
            },
            body: requestBody ? JSON.stringify(requestBody) : "{}"
        };
        console.log("POST URL is : ", url)
        console.log("Request is : ", requestOptions)
        const response = await fetch(url, requestOptions);
        let json_response = await response.json()
        console.log("Response is : ",json_response)
        return json_response
    }catch(e){
        console.log("Service Failed: ", e)
        return {
            status: false,
            messages: ["Service Failed. Please try after sometime."]
        }
    }
}

Console Output: - Согласно логам консоли, вся информация отправляется правильно

enter image description here


Но когда дело доходит до Django, все оказывается пустым.

enter image description here


В Django я проверяю информацию пользовательского заголовка в моем промежуточном ПО, и ниже приведен код
def __call__(self, request):
    headers = request.headers
    token = headers.get('Token')
    user_type = headers.get('User-Type')
    print(headers)
    print("** Token : {} | User Type : {} ".format(token, user_type))

    errors = self.authenticate_api_request(token, user_type)
    if(len(errors) > 0):
        return self.unauthorized_api_response(errors)

    return self.get_response(request)

Settings.py:

#TODO
CORS_ALLOWED_ORIGINS = [
    "http://localhost:3000",
]

CORS_ORIGIN_ALLOW_ALL = True

CUSTOM_HEADERS = (
    'Access-Control-Allow-Origin',
    'Token',
    'User-Type'
)
CORS_ALLOW_HEADERS = default_headers + CUSTOM_HEADERS

#TODO
CORS_ORIGIN_WHITELIST = (
    'localhost:3000',
    'http://localhost:3000',
)

#TODO
ALLOWED_HOSTS = [
    '127.0.0.1',
    'localhost',
]

INSTALLED_APPS = [
    ...
'corsheaders', 
    ...
]

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware',
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'middleware.authenticate.Authenticate',
    'corsheaders.middleware.CorsMiddleware',
]
Вернуться на верх