获取返回304或无法刷新页面

时间:2017-05-14 17:20:52

标签: express mongoose

我的问题非常痛苦。

我处理了错误:通过将此添加到我的server.js

,无法在刷新页面上获取/ page_name
app.get('*', function (req, res) {
    res.sendFile(__dirname + '/app/index.html');
});

但是现在当我去一个我有get / post等功能的页面时。它返回304 ......

如果我删除了app.get(' *' ...,我无法刷新而无法获取空白页面'无法获取/ page_name,但如果我去它手动从索引开始,我的到达和后期工作完美。

304的返回是普通的html,应该是json ...

如何在不损坏我对服务器的调用的情况下在任何页面上启用刷新?

我的dep

"express": "4.15.2",
"morgan": "~1.0.0",
"mongoose": "4.9.8",
"body-parser": "1.17.1"

1 个答案:

答案 0 :(得分:1)

app.get('*', function (req, res) { res.sendFile(__dirname + '/app/index.html'); });会抓住您的所有请求(这是*目的)

因此,如果您打算保留此行为,则可以在每个其他行之后声明此路由。

关于普通html中的错误页面:
要快递到handle errors,你必须设置 app.use(function (err, req, res, next) { res.status(500).json({error:'some message'}) })

为了理解/ route不匹配的原因,您可以执行app.use(function (req, res, next) { console.log(req.route); })之类的操作 看看出了什么问题