Вопрос проверяет знание структуры HTTP-сообщений, а именно стартовой строки, что необходимо для понимания основ протокола и отладки сетевого взаимодействия.
Стартовая строка — это первая строка любого HTTP-сообщения, которая задаёт контекст всего запроса или ответа. Она определяет, какое действие выполняется (в запросе) или каков результат этого действия (в ответе).
В запросе стартовая строка состоит из трёх частей, разделённых пробелами:
/api/users или /index.html. Может также включать строку запроса (query string).HTTP/1.1 или HTTP/2. Указывает, по каким правилам следует интерпретировать сообщение.GET /search?q=test HTTP/1.1
POST /api/login HTTP/1.1
В ответе стартовая строка также состоит из трёх частей:
HTTP/1.1 200 OK
HTTP/1.1 404 Not Found
HTTP/1.1 500 Internal Server Error
Эти строки видны при отладке с помощью инструментов вроде cURL, браузерных DevTools (вкладка Network) или анализатора трафика (Wireshark). Например, при разработке REST API вы явно работаете с методами и путями в запросах и проверяете коды статусов в ответах для обработки ошибок.
// Пример на Node.js с модулем http
const http = require('http');
const server = http.createServer((req, res) => {
// req.method, req.url содержат данные из стартовой строки запроса
console.log(`Запрос: ${req.method} ${req.url}`);
// Устанавливаем стартовую строку ответа и заголовки
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Hello World');
});
server.listen(3000);
Вывод: Понимание стартовой строки HTTP — фундаментальный навык для веб-разработки, необходимый для корректной работы с API, отладки сетевых проблем и написания серверного кода, который правильно интерпретирует запросы и формирует ответы.