HTTP-запросы и их роль в сайтостроении

Веб-клиенты используют HTTP для отправки запросов на серверы с целью доступа или изменения ресурсов и данных. Важность понимания принципов работы HTTP-запросов и ответов в сайтостроении сложно переоценить. Особенно это важно, если вы планируете заниматься разработкой сайтов на профессиональном уровне. Выбрать свой путь развития в этом направлении вам поможет блог https://cityhost.ua/blog/saitostroenie/. Рекомендую почитать на досуге, а пока же возвращаемся к теме публикации и рассмотрим HTTP-запросы и ответы.

Методы HTTP-запросов

HTTP определяет набор методов, которые клиенты могут использовать для запроса информации с веб-серверов. Помните, что эти методы соответствуют операциям CRUD, которые можно выполнять с данными:

  • Создание данных. Клиенты используют метод HTTP POST для создания или обновления данных на сервере. Этот метод используется, когда HTML-формы должны отправлять данные формы на сервер. Например, когда пользователь заполняет форму для создания новой учетной записи и нажимает кнопку отправки, браузер отправляет HTTP-запрос POST на сервер приложения, чтобы сохранить данные пользователя в базе данных.
  • Чтение данных.
    Клиенты могут использовать метод HTTP GET для получения информации с сервера. Это полезно в сценариях, где клиенту необходимо получить то, что запрашивает пользователь.
    Например, когда пользователь просматривает сайт покупок и переходит на страницу «штаны», браузер может отправить GET-запрос на сервер приложения, запрашивающий список всех штанов для продажи, и затем отобразить эти результаты на странице.
    Клиент может дополнительно передавать параметры, которые дают серверу больше информации о запросе, такие как идентификатор или имя конкретного объекта, который клиент хочет найти.
  • Обновление данных: HTTP PUT или POST методы. Клиенты используют метод HTTP PUT для создания или обновления данных на сервере. Этот метод похож на метод POST.
  • Удаление данных. Клиенты используют метод HTTP DELETE для удаления ресурсов с сервера.

Формат HTTP-запроса

Сообщения HTTP-запроса, которые отправляют клиенты, состоят из строки запроса, необязательного заголовка и необязательного тела сообщения.

Строка запроса
Заголовки
Пустая строка
Тело запроса

Строка запроса

Когда клиент отправляет HTTP-запрос на сервер, он должен включить некоторую ключевую информацию о запросе:

  • Метод запроса: какой тип запроса делается? (GET, PUT, POST или DELETE)
  • URI для определения ресурса, задействованного в запросе: на какие ресурсы влияет этот запрос?
  • Версия HTTP #: В какой версии протокола HTTP написано это сообщение?

Предположим, что URL-адрес сервера в этом сценарии – cityhost.ua, а путь к ресурсу вопроса – /questions.

  • Создать – добавить новый вопрос:
    POST /questions HTTP/1.1
  • Читать – просмотреть вопрос (в данном случае вопрос с ID = 3):
    GET /questions:3 HTTP/1.1
  • Читать – просмотреть все вопросы:
    GET /questions HTTP/1.1
  • Обновить – Изменить вопрос:
    PUT /questions:2 HTTP/1.1
  • Delete- Удалить вопрос:
    DELETE /questions:4 HTTP/1.1

Веб-сервер интерпретирует каждый из этих запросов на основе типа запроса и URI и отвечает или завершите операцию в зависимости от ситуации.

Заголовок и тело

Заголовок содержит дополнительные метаданные о запросе. Детали полей заголовка выходят за рамки данной статьи, поэтому их рассматривать сейчас не будем. Тело содержит дополнительные параметры для запроса и данные, которые отправляются на сервер. Если клиент отправляет запрос POST после того, как пользователь заполняет форму, данные формы будут отправлены в теле сообщения.

HTTP-ответы

Веб-серверы так же используют HTTP для отправки ответов клиентам, которые сделали запросы. Ответное сообщение HTTP состоит из состояния строки, необязательного заголовка и необязательного сообщения тела.

Строка статуса
Заголовки
Пустая строка
Тело запроса

Строка статуса сообщает клиенту результат запрошенной операции. Коды состояния записываются с использованием трехзначных кодов. Возможно, вы видели некоторые из этих кодов, если когда-либо сталкивались с отсутствующей веб-страницей или ошибкой в ​​Интернете. Наиболее распространенными являются коды ответов:

  • 200: этот код означает «ОК». Этот статус отправляется, когда сервер успешно завершил операцию.
  • 400: этот код означает «Плохой запрос». Этот статус отправляется, когда сервер не может понять запрос клиента.
  • 404: этот код означает «не найден». Этот статус отправляется, когда сервер не может найти запрошенную страницу или ресурс.

Подобно сообщениям HTTP-запроса, ответные сообщения также содержат заголовки и тело. Заголовок содержит необязательные метаданные о ответе. Детали полей заголовка так же выходят за рамки данного материала. Тело ответа содержит любые данные или ресурс, который сервер предоставляет в ответ на запрос. Это может быть файл HTML, запрошенный клиентом, или данные из базы данных.

На этом с HTTP заканчиваю. В будущих публикациях поговорим о том, что такое REST API, какова его роль в создании веб-приложений и как его создать.

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.