我正在使用 Node.js 和 mongodb。
我似乎有时会收到 200,有时会收到未修改的 304。
router.get('/add-to-bag/:id', (req, res, next) => {
req.session.bag.push(req.params.id);
res.redirect('back');
});
});
我无法确定您使用什么堆栈来创建应用程序。看起来您正在使用 Express.js 进行路由。不过,我可以告诉你为什么会得到 304。
来自维基百科:
304 未修改(RFC 7232)
指示自请求标头 If-Modified-Since 或 If-None-Match 指定的版本以来,资源尚未修改。在这种情况下,不需要重新传输资源,因为客户端仍然有先前下载的副本。 [24]
304 表示“嘿,还记得我发送给您的最后一个答案吗?它没有改变”,因此您的浏览器将重播从缓存收到的最后一个响应,而不会发生数据传输。
这意味着您的数据is正在添加。但由于包中的数据完全相同,服务器不会再次给出具有完全相同数据的 200,而是发出 304。
BTW:您的 API 不是 Restful。我建议使用POST
创建新记录而不是发布GET
到不同的 URL。我建议阅读 REST API 设计。一旦你掌握了它的窍门,它就非常简单了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)