当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Express.js res.sendFile()用法及代码示例


res.sendFile()函数本质上在给定路径上传输文件,并根据文件名扩展名设置Content-Type响应HTTP标头字段。

用法:

res.sendFile(path [, options] [, fn])

参数:path参数描述路径,而options参数包含各种属性,例如maxAge,root等,而fn是回调函数。

返回:它重新调整对象。

快递模块的安装:



  1. 您可以访问安装Express模块​​的链接。您可以使用此命令安装此软件包。
    npm install express
  2. 安装Express模块​​后,可以使用命令在命令提示符下检查Express版本。
    npm version express
  3. 之后,您可以仅创建一个文件夹并添加一个文件,例如index.js。要运行此文件,您需要运行以下命令。
    node index.js

范例1: 文件名:index.js

var express = require('express'); 
var app = express(); 
var path = require('path'); 
var PORT = 3000; 
  
// Without middleware 
app.get('/', function(req, res){ 
    var options = { 
        root:path.join(__dirname) 
    }; 
      
    var fileName = 'Hello.txt'; 
    res.sendFile(fileName, options, function (err) { 
        if (err) { 
            next(err); 
        } else { 
            console.log('Sent:', fileName); 
        } 
    }); 
}); 
  
app.listen(PORT, function(err){ 
    if (err) console.log(err); 
    console.log("Server listening on PORT", PORT); 
});

现在,创建一个.txt文件,如下所示,我们在项目的根目录中创建了Hello.txt文件,其内容如下:

Greetings from GeeksforGeeks

运行程序的步骤:

  1. 确保使用以下命令安装了Express模块​​:
    npm install express
  2. 使用以下命令运行index.js文件:
    node index.js

    输出:

    Server listening on PORT 3000
    
  3. 现在打开浏览器并转到http://localhost:3000 /,现在检查控制台,您将看到以下输出:
    Server listening on PORT 3000
    Sent:Hello.txt

    在屏幕上,您将看到以下输出:

    Greetings from GeeksforGeeks

范例2: 文件名:index.js

var express = require('express'); 
const path = require('path'); 
var app = express(); 
var PORT = 3000; 
  
// With middleware 
app.use('/', function(req, res, next){ 
     
    var options = { 
        root:path.join(__dirname) 
    }; 
      
    var fileName = 'GeeksforGeeks.txt'; 
    res.sendFile(fileName, options, function (err) { 
        if (err) { 
            next(err); 
        } else { 
            console.log('Sent:', fileName); 
            next(); 
        } 
    }); 
}); 
  
app.get('/', function(req, res){ 
    console.log("File Sent") 
    res.send(); 
}); 
  
app.listen(PORT, function(err){ 
    if (err) console.log(err); 
    console.log("Server listening on PORT", PORT); 
});

确保您创建一个.txt文件,如此处所示,我们在项目的根目录中使用以下文本创建了GeeksforGeeks.txt:

Welcome from GeeksforGeeks

使用以下命令运行index.js文件:

node index.js

现在打开浏览器并转到http://localhost:3000 /,现在检查控制台,您将看到以下输出:

Server listening on PORT 3000
Sent:GeeksforGeeks.txt
File Sent

您将在浏览器屏幕上看到以下输出:

Welcome from GeeksforGeeks

参考: https://expressjs.com/en/5x/api.html#res.sendFile




相关用法


注:本文由纯净天空筛选整理自gouravhammad大神的英文原创作品 Express.js res.sendFile() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。