POST- Метод для отправки данных на сервер (например, из форм, JSON).
- Данные передаются в теле запроса (
request body) и не видны в URL.
GET- Метод для запроса данных с сервера.
- Параметры передаются в URL-адресе (query string).
- Используется для получения страниц, данных. Может кешироваться браузером.
- Не подходит для передачи чувствительной информации.
- Доступ в Django: Параметры доступны через
request.GET.from django.http import HttpResponse def process_get(request): if request.GET: # request.GET - это QueryDict name = request.GET.get('name', 'Guest') # Безопасное получение параметра return HttpResponse(f"Hello, {name}! I've got GET" "params.") return HttpResponse("No GET parameters provided.") QueryDictvsdict:- Дубликаты ключей:
QueryDictможет хранить несколько значений для одного ключа (например, из<select multiple>). Стандартныйdict- нет. - Типы данных: В
QueryDictключи и значения всегда строки. Вdictмогут быть разных типов. - Методы:
QueryDictимеет специфичные методы, какgetlist()(получить все значения для ключа списком),appendlist(). - Изменяемость:
QueryDict, полученный изrequest, обычно неизменяем дляGET, но может изменяться методами.
- Дубликаты ключей:
DELETE- Используется для запроса удаления ресурса на сервере.
PUT- Используется для полного обновления ресурса на сервере или его создания по указанному URL. Идемпотентный (повторные запросы дают тот же результат).
PATCH- Используется для частичного обновления ресурса на сервере.
OPTIONS- Используется для запроса информации о доступных методах или параметрах для ресурса.
HEAD- Аналогичен
GET, но сервер возвращает только заголовки ответа, без тела ответа. Используется для проверки ресурса без его загрузки.
- Аналогичен
〰〰〰 𓆝 𓆟 𓆞 𓆝 𓆟 𓆝 𓆟 𓆞 〰〰〰