Как обслуживать файл, прочитанный с помощью 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

Другие вопросы по тегам