Напишите HTTP-сервер на Node.js, который записывает информацию о каждом входящем запросе (метод, URL, время) в текстовый файл requests.log
. Сервер должен возвращать "Запрос обработан"
на любой запрос.
Пример:
node server.js
curl http://localhost:3000/test
curl -X POST http://localhost:3000/api
[2024-11-11T12:00:00Z] GET /test
[2024-11-11T12:00:05Z] POST /api
Решение задачи
const http = require('http');
const fs = require('fs');
const logFile = 'requests.log';
// Создание HTTP-сервера
const server = http.createServer((req, res) => {
const logEntry = `[${new Date().toISOString()}] ${req.method} ${req.url}\n`;
// Записываем лог в файл
fs.appendFile(logFile, logEntry, (err) => {
if (err) {
console.error('Ошибка записи лога:', err.message);
}
});
// Отправляем ответ
res.writeHead(200, { 'Content-Type': 'text/plain' });
res.end('Запрос обработан');
});
// Запуск сервера на порту 3000
server.listen(3000, () => {
console.log('Сервер запущен на http://localhost:3000');
});