更改静态文件夹-快速

时间:2019-03-07 17:28:08

标签: javascript html node.js express

我正在用express开发一个NodeJS应用,我想通过app.post函数将用户发送到另一个页面。

我知道您可以通过使用类似app.use(express.static('client/home'));的页面来服务页面,并且该页面在我的应用中有效,但是当我按如下所示将其放入我的app.post时,页面只会显示“本地主机未发送任何数据”。

app.post('/createSchool', function(req, res) {
  app.use(express.static('client/school'));
});

如果我在res.end('');之后添加app.use,则该页面不会崩溃,但遇到空白屏幕。

如何让Express投放client/school文件夹中的HTML?

1 个答案:

答案 0 :(得分:0)

我必须在res.sendFile之后添加app.use。现在的功能如下:

app.post('/createSchool', function(req, res) {
  app.use(express.static('client/school'));
  res.sendFile(path.join(__dirname, '/client/school/index.html'));
});

之所以没有添加它,是因为一开始就不需要它。为什么会这样呢?

**编辑:**当我在POST方法中删除app.use时(仅留下res.sendFile时,页面仍按预期工作。为什么我需要app.use ?我以为是将文件夹中的所有文件(即HTML,CSS和JS)一起提供,就像使用res.sendFile只是给您裸HTML一样。

我现在真的很困惑...