我使用express js和passport js作为身份验证系统,也使用 View 引擎。我正在寻找一种解决方案,可以授予用户访问权限并让用户查看他们的文件,而不是其他人的文件。例如,在图像文件夹中,用户将访问他们的文件,之后,我想将这些文件传递给查看引擎。如果我使用公用文件夹,任何人都可以看到其中的每个文件。您推荐什么解决方案?
最佳答案
您应该为每个用户创建一个目录。
那么,例如,您的 URL 是 /show/files
在您的逻辑内部,按用户信息过滤目录。
app.get('/show/files', (req,res)=>{
// filter resources by user info
})
不要忘记为您的资源创建安全 URL。
坏主意:/images/amin/profile.png
好主意: 创建一条路线来服务您的资源。
app.get('/resources', (req,res)=>{
// add query parameter for resource for example profile.png
// then check user directory and send it
})
你的网址转换成
/resousrce?file=profile.png
关于node.js - 如何在express js中授予用户特定的文件访问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57519568/