Повторение: основы HTTP
Урок 25 из 47 курса Сетевое взаимодействие в терминале на Coddy.
HTTP — это текст фиксированной формы в обоих направлениях.
Запрос состоит из метода, пути и версии, затем заголовков, пустой строки и необязательного тела. Ответ состоит из версии и кода состояния, затем заголовков, пустой строки и тела.
Метод указывает тип операции: GET читает данные и должен быть безопасным, POST отправляет данные, PUT сохраняет, DELETE удаляет.
Код состояния показывает, как всё прошло, а первая цифра указывает на ответственную сторону: 2xx — операция выполнена, 3xx — перейдите в другое место, 4xx — ваш запрос был неправильным, 5xx — на сервере произошёл сбой.
Заголовки описывают тело, прежде всего Content-Type. И каждую из этих частей можно набрать вручную — об этом стоит помнить в следующий раз, когда HTTP покажется магией.
Задание
ЭкспертПрочитайте весь ответ целиком, сверху вниз, от сервера, который вы написали сами.
Отправьте вручную написанный ответ на порту 9115 со строкой состояния HTTP/1.1 404 Not Found, заголовком Content-Type: text/plain и телом nothing here. Затем используйте curl, чтобы вывести код состояния, а на следующей строке — тело.
Ожидаемый вывод:
404
nothing hereКаждый
nc -lобслуживает одного клиента и завершается, поэтому запустите второй перед вторым запросом.
Попробуйте сами
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Сетевое взаимодействие в терминале
5HTTP вручную
Анатомия запросаМетоды запросовКоды состоянияЗаголовки ответаФормирование ответаПовторение: основы HTTP3Порты и сокеты
Что такое портХорошо известные портыЛокальный хостПрослушивание и подключениеПовторение: порты6curl в деталях
Просмотр заголовковСохранение ответовПользовательские заголовкиСтатус и время выполненияКоды выхода curlПовторение: флаги curl9Аутентификация и отладка
API-ключи и BearerUser-AgentТайм-ауты и повторные попыткиАнализ ошибкиПовторение: отладкаПотренируйтесь самостоятельно: Песочница Terminal