gpt4 book ai didi

node.js - 即时更改文件名以供下载

转载 作者:搜寻专家 更新时间:2023-11-01 00:10:29 25 4
gpt4 key购买 nike

我通过将其原始名称重命名为 userID + '_' + new Date().getTime() + fileExt 来保存用户上传。我将文件属性存储在 mongodb 集合中:

{
name : String //generated name
, originalName : String //its original name
...
}

现在,当用户请求下载文件时,我必须向用户提供文件的原始名称(保存在数据库中,因此抓取它没有问题)。

针对以下请求

GET/users/:userId/uploads/:fileId?type=download

我有这个处理程序

//the mongoose query
UserUpload.findById(req.params.fileId).exec(function(err, doc){
var fileLocation = __dirname + '/public/uploads/users/' + req.params.userId + '/' + doc.name;

if(req.query.type && req.query.type == 'download') {
// I don't know what should I do now
// Downloader.download(fileLocation, newName);
}

});

我读了wikinode-static module但不知道如何完成这项工作?

最佳答案

我在这里找到了答案:Download a file from NodeJS Server using Express .使用 express 和不使用 express 。

如果你使用Express就太简单了。这是 res.download 的文档.我不敢相信解决方案只是一行代码:

res.download('/path/to/file.ext', 'newname.ext');

关于node.js - 即时更改文件名以供下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22832108/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com