const express = require('express');
const path = require('path');
const app = express();
app.listen(9000);
app.get('/test', function(req, res) {
console.log("not being hit");
res.send(200);
});
app.use(express.static(path.join(__dirname, 'build')));
app.get('/*', function (req, res) {
console.log("always hits");
res.sendFile(path.join(__dirname, 'build', 'index.html'));
});
这似乎是一个简单的问题,但我的大脑开始转向糊涂了。
以下是详细信息:
我在反应应用上有run build
,而index.html
文件位于构建文件夹中,我希望通过快递服务。
我希望明确优先/test
,如果它不是/test
,那么我希望它能够在构建文件夹中提供index.html
文件。
如果您转到/test
,则会跳过该/*
并始终点击/
路线。如果您删除了通配符并改为使用/
,那么如果您在浏览器中转到/test
或index.html
,则两条路线都不会被点击。但是,仍然提供%!PS-Adobe-3.0
%%Creator: Adobe Illustrator(TM) 3.2
%%AI8_CreatorVersion: 22.1.0
...
,看起来就像是静态中间件。
我读过的所有内容都表明快递中的顺序很重要,但我觉得我失去了我该死的心灵,我开始慢慢陷入疯狂。
提前致谢。