按名称在目录中搜索文件(不知道扩展名)

Search for a file in directory by it's name (without knowing extension)

我想在不知道扩展名的情况下通过文件名在特定目录中查找文件

app.get("/test/:id", (req, res) => {
    const mongo_id = req.params.id;
    const file_path = __dirname + somepath + mongo_id + ".png"; // I should remove this extension but how to find file ?
    if (!existsSync(file_path)) return res.status(404).end() ; // Check if file exists

    res.sendFile(file_path) ;
})

如您所见,我在路径末尾添加了 .png,我想将其作为响应发送,但有时我想保存一些不是 PNG 文件的文件

谢谢

我在将文件信息存入数据库时​​通过保存文件扩展名解决了这个问题

当我发送获取图像响应的请求时,我获得了文件扩展名和在目标目录中找到它所需的信息,并将文件发送到响应中。 这是我的代码:

app.get("test/:id", (req, res) => {
    const mongo_id = req.params.id;

    MyModel.findById(mongo_id, (err, file) => {
        if (err || !file) return res.status(404).end()

        const file_path = __dirname + somepath + mongo_id + '.' + file.extension;
        
        if (!existsSync(file_path)) return res.status(404).end();
        res.sendFile(file_path);
    })
})

但是,如果有人知道我在问题中提到的解决方案,如果他们分享的话,我也会很感激。