Как обслуживать файл, прочитанный с помощью fs.readFile
Я разрабатываю приложение с помощью nodejs. Я должен прочитать локальный файл на сервере, я использую эту функцию:
fs.readFile(path, "utf8", function (err,data) {}
как я могу предоставить "данные" клиенту? Хорошо открыть его в новой вкладке или загрузить на клиент.
- ОБНОВЛЕНИЕ-- Я тоже пытаюсь использовать это решение... это хороший способ?
res.writeHead(200, {"Content-Type": "application/pdf"});
res.write(data);
res.end();
1 ответ
Предполагая, что вы используете какой-то HTTP-сервер здесь, вы получите response
объект в обработчике Этот объект на самом деле является потоком. Я использую встроенный узел HTTP-сервер здесь для моего примера.
http.createServer(function(req, res){
fs.createReadStream(path).pipe(res);
});
В экспрессе и хапи есть определенный тип ответа для файла отправки, если вы используете их:
Хапи: reply.file
Экспресс: res.sendFile