node.js 发送文件到客户端-ag捕鱼王app官网

当前位置:ag捕鱼王app官网 > > 编程语言 > node.js >

node.js 发送文件到客户端

作者:迹忆客 最近更新:2023/03/27 浏览次数:

在本文中,我们将学习如何使用 express 在 node.js 中向客户端发送文件。


在 node.js 中使用 express 发送文件

express.jsexpress 是 node.js 的后端 web 实用程序框架。 express 是一个 node.js web 应用程序框架,可为 web 和移动应用程序提供强大的特性集。

函数 res.sendfile() 传递指定路径中的文件,并根据文件扩展名设置内容类型响应的 http 标头字段。

语法:

res.sendfile(path [, options] [, fn])
参数 说明
path 一个强制参数,描述需要发送的文件的路径。
options 一个可选参数,包含正在发送的文件的各种属性,例如 maxage、root 等。
fn 文件时调用的回调函数。

按照以下说明将文件发送给客户端。

完整的源代码 - index.js

const express = require('express');
const app = express();
const path = require('path');
const port = 3001;
app.get('/', (req, res, next) => {
    const filename = 'helloworld.txt';
    res.sendfile(filename, {root: path.join(__dirname)}, (err) => {
        if (err) {
            next(err);
        } else {
            console.log('file sent:', filename);
        }
    });
});
app.listen(port, (err) => {
    if (err) console.log(err);
    console.log("server listening on port", port);
});

在上面的例子中,我们创建了一个监听指定端口 3001 的服务器,一旦服务器监听到指定的端口,它就会执行第一个匹配路由里面的代码。

然后响应对象将通过 sendfile() 方法返回给客户端。 如果遇到任何错误,它将使用 next() 方法将错误传递给错误处理程序。

如果一切顺利,它会将响应对象与文件内容一起返回给客户端。

尝试在支持 node.js 的 replit 中运行上面的代码,它会显示如下结果。

输出:

server listening on port 3001
file sent: helloworld.txt

在 node.js 中使用 express 发送文件

上一篇:node.js 中的 http 发送 post 请求

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

发布时间:2023/03/27 浏览次数:243 分类:node.js

本教程演示了如何在 node js 中使用 module.exports。

在 node.js 中编码 url

发布时间:2023/03/27 浏览次数:402 分类:node.js

在这篇简短的文章中,我们将学习如何在 node.js 中进行 url 编码。

在 node.js 中编码 base64

发布时间:2023/03/27 浏览次数:278 分类:node.js

在本文中,我们将学习如何在 node.js 中将字符串或文本转换为 base64。

node.js 与 react js 的比较

发布时间:2023/03/27 浏览次数:173 分类:node.js

本文比较和对比了两种编程语言,node.js 和 react。react 和 node.js 都是开源 javascript 库的示例。 这些库用于构建用户界面和服务器端应用程序。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便
网站地图