sendFile绝对路径

时间:2015-02-07 15:15:13

标签: node.js express

在Windows计算机上,我有一个映射共享文件夹=> Z:/上传/

使用express,我使用res.senFile将文件返回给浏览器:

var download = config.file_dir + "/" + file;
res.sendFile(download);

下载值为Z:/uploads/737237213791239.pdf

我收到此错误:

throw new TypeError('path must be absolute or specify root to res.sendFile

我是否给出了绝对的路径?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我发现使用正斜杠配置我的文件夹最简单,使用path.join发送。这应该起作用驱动器号或UNC路径。

var path = require("path");
config.file_dir = "z:/folder";
//use forward slashes for UNC if you wish to use that instead ie //server/share

var file = path.join(config.file_dir, urlPath);

res.sendFile(file, (err) => {
    if (err) {
        res.status(err.status || 500).send();
    }
 });