Node.js: sendfile用于未知的文件类型

Node.js: sendfile for unknown file type

本文关键字:文件 类型 未知 用于 js sendfile Node      更新时间:2023-09-26

使用MEAN环境,我根据请求将图像返回给客户端。例子:

res.sendfile("./pathtoimage/someImage.jpg");

我的问题是:图像的路径(以及图像名称)是在运行时计算的,遵循特定的方案,因此我知道图像的路径和实际名称。我不知道的是图像的文件类型,因此缺少文件扩展名(如.jpg, .gif, .png)。除了检查文件是否存在于任何一个版本之外,我是否可以这样写:

res.sendfile("./pathtoimage/someImage.*");

返回该文件与任何扩展名你可能找到,而不是手动检查该文件的某个版本是否存在?还有其他建议吗?否则我会依次尝试访问所有变量,直到找到正确的组合并返回。我只是想知道是否有一种更快、更优雅的方法来做到这一点。

我想你和fs.exists是单独在一起的。

如果您考虑使用像nginx这样的反向代理来提供静态文件,那么您将有更多的选项来提供具有几个可能扩展名的图像文件。

nginxtry_files指令可用于此目的:

try_files $uri.jpg $uri.gif $uri.png $uri/ =404