如何使用 express 访问安全文件?
How can I access secure files with express?
nodeapp
-public
-CSS
-style.css
-pictures
-secretImage.png
-views
-index.hbs
-login.hbs
-profile.hbs
-server.js
const staticFiles = path.join(__dirname, './public')
app.use(express.static(staticFiles))
app.set('view engine', 'hbs')
我将 css 保存在 html 中访问的 public 目录中,如下所示:
href="/css/style.css"
这很好,但我需要存储一些只对登录用户可用的图片。如果我的图片在图片文件夹中,我该如何访问它们?
您可以使用sendFile方法...
app.get('/picture/:pictureName', (req, res) => {
const valid = /* Do your logic to grant access */
if (valid === false) {
return res.status(403).send('Not allowed')
}
res.sendFile('your file path')
})
nodeapp
-public
-CSS
-style.css
-pictures
-secretImage.png
-views
-index.hbs
-login.hbs
-profile.hbs
-server.js
const staticFiles = path.join(__dirname, './public')
app.use(express.static(staticFiles))
app.set('view engine', 'hbs')
我将 css 保存在 html 中访问的 public 目录中,如下所示: href="/css/style.css" 这很好,但我需要存储一些只对登录用户可用的图片。如果我的图片在图片文件夹中,我该如何访问它们?
您可以使用sendFile方法...
app.get('/picture/:pictureName', (req, res) => {
const valid = /* Do your logic to grant access */
if (valid === false) {
return res.status(403).send('Not allowed')
}
res.sendFile('your file path')
})