РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
357 of 818 menu

Атрибут headers

Атрибут headers класса HttpRequest предоставляет доступ к заголовкам HTTP-запроса в виде объекта, подобного словарю. Все заголовки автоматически нормализуются и преобразуются к формату с заглавными буквами и дефисами. Атрибут доступен только для чтения и содержит все заголовки, отправленные клиентом, включая стандартные, такие как User-Agent, Content-Type, и пользовательские.

В отличие от словаря HttpRequest/attribute/META/">META, который содержит заголовки с префиксом HTTP_ и другие метаданные сервера, атрибут headers предоставляет прямой и удобный доступ только к заголовкам запроса.

Синтаксис

request.headers.get('Header-Name') request.headers['Header-Name'] request.headers.getlist('Header-Name') request.headers.keys() request.headers.items()

Пример

Получим содержимое заголовка User-Agent из запроса:

from django.http import HttpResponse def my_view(request): user_agent = request.headers.get('User-Agent') return HttpResponse(f'Your user-agent: {user_agent}')

Результат выполнения при запросе с браузера Chrome:

"Your user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36"

Пример

Переберем все заголовки запроса и выведем их названия и значения:

from django.http import HttpResponse def my_view(request): res = "" for key, value in request.headers.items(): res += f"{key}: {value}\n" return HttpResponse(res)

Результат выполнения кода:

"Host: example.com" "User-Agent: Mozilla/5.0" "Accept: text/html" "Accept-Language: ru-RU"

Пример

Получим значение пользовательского заголовка X-Custom-Header:

from django.http import HttpResponse def my_view(request): custom_header = request.headers.get('X-Custom-Header', 'Header not found') return HttpResponse(f'Custom header: {custom_header}')

Результат выполнения кода:

"Custom header: My value"

Смотрите также

  • атрибут META,
    который предоставляет доступ к метаданным сервера и заголовкам запроса с префиксом HTTP_
  • атрибут GET,
    который содержит параметры строки запроса
  • атрибут POST,
    который содержит данные, переданные методом POST
  • атрибут COOKIES,
    который содержит куки, отправленные клиентом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить