![](/img/trans.png)
[英]How to configure express.js's `app.use(express.static(…)`?
[英]How to use express.static in none app.js folder?
我試圖通過從服務器端使用express.static來顯示圖像。
我的文件夾是這樣的結構..
public
/test.png
routes
/index.js
/upload.js
app.js
app.js下的express.static工作( http:// localhost:4000 / img / test.png )
const express = require('express');
const app = express();
app.use('/img', express.static(__dirname + '/public'));
// Server Listen
const port = process.env.PORT || 4000;
app.listen(port, () => {
console.log(`Server running on port: ${port}`);
});
但它在upload.js( http:// localhost:4000 / img / test.png )下工作,我在這里做錯了什么? 通過安慰,這條道路似乎是正確的道路。
upload.js
const express = require('express');
const upload = express.Router();
const cors = require('cors');
const path = require("path");
upload.use(cors());
console.log(path.join(__dirname + '/../public'));
upload.use('/img', express.static(path.join(__dirname + '/../public')));
module.exports = upload;
這是我的index.js和app.js
index.js
const router = require('express').Router();
const uploadRoutes = require('./upload');
router.use('/upload', uploadRoutes);
module.exports = router;
app.js
// Import thrid parties for APP
const express = require('express');
const cors = require('cors');
const bodyParser = require('body-parser');
const app = express();
const routes = require('./routes');
// App configuration
app.use(bodyParser.json());
app.use(cors());
app.use(bodyParser.urlencoded({
extended: false
}));
// Route Configuration
app.use('/api', routes);
// Server Listen
const port = process.env.PORT || 4000;
app.listen(port, () => {
console.log(`Server running on port: ${port}`);
});
謝謝你的看法。
我認為它應該像app.use('/img', express.static(__dirname + 'public'));
沒有必要在兩個文件中使用express.static
。 它通常放在條目文件(app.js)中。
以下是快速文檔中的示例(注意/
不是必需的):
app.use('/static', express.static(path.join(__dirname, 'public')))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.