这是几行代码...我正在运行另一个应用程序,该应用程序的设置完全相同,而且没有问题。
editor.html
这是链接标记
app.use('/app', express.static(__dirname + "/public"));
与此img标签相同
<link rel="stylesheet" type="text/css" href="/app/css/app.css">
我不确定为什么,但是似乎是以HTML格式发送文件。通常,这意味着在服务器上找不到该文件,但是我检查了一下并确认是该文件。
完整文件
<img src="/app/img/SCS-NewLogo_donl.svg" height="65px" width="350px" id="sc-logo">
目录结构
const express = require('express');
const config = require('./lib/config');
const bodyParser = require('body-parser');
const URLS = require('./lib/URLS.js');
const PORT = process.env.PORT || 9005;
const ENV = config.ENV || 'TEST';
const SERVER = config.SERVER;
const app = express();
app.set('views', './views');
app.set('view engine', 'ejs');
app.use('/app', express.static(__dirname + "/public"));
app.use(bodyParser.urlencoded({ extended: false }))
app.use(bodyParser.json())
app.all(/^\/apps$/, function (req, res) {
res.redirect('/apps/job-search');
});
app.get('/apps/job-search', (req, res) => {
res.render('pages/search');
});
app.post('/apps/job-search/send-input', (req, res) => {
// Send data to API server which will handle DB query...
axios.get(URLS.GatherSearchResults)
.then(resp => {
console.log(resp.data);
}).catch(err => {
console.log(err)
});
});
app.listen(PORT, () => {
console.log('App is listening on port ' + PORT + ' on server ' + SERVER + '...');
});
答案 0 :(得分:0)
我认为我看到您的问题。在将路由/app
声明为静态后,您需要在几行后将其重新映射到'/apps/job-search'
。
将静态行更改为app.use('/', express.static(__dirname + "/public"));
,HTML文件中的链接应以/css
和/img
等开头。
通过尝试打开您现有的链接之一,并查看您当前正在提供的内容来验证这一点(我猜-'/apps/job-search'
上的内容)。