现在我有一个本地运行的Express服务器,用于管理来自React Client的请求。问题当我的客户端处于空闲状态时(我假设客户端PUT服务器之前已进行了操作),大约3-5分钟后,错误消息出现在控制台日志中。错误信息:这将导致服务器的下一个客户端PUT失败,即未保存数据。要求我在中间件管理方面没有太多经验,因此希望获得一些有关如何诊断可能导致此错误的帮助。可能有用的注意事项:有时,当客户端对服务器进行过多的PUT时,数据将无法保存,但是不会出现错误消息。我被迫重新加载页面。从客户端提取-App.js saveData = data => { console.log("Submitting request to save..."); fetch('/api/v1/savedata', { method: 'PUT', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: JSON.stringify(data) }) .then(console.log("Save complete!")); };从Server.js中提取:// An api endpoint that saves data from the clientapp.put('/api/v1/savedata', (req,res) => { console.log('Server received request to saveData'); let options = { files: './data/save.json', changes: req.body } updateJsonFile(options);});
1 回答
幕布斯7119047
TA贡献1794条经验 获得超8个赞
您没有在API中发送任何响应,请使用res.send或res.json类似这样:
app.put('/api/v1/savedata', (req,res) => {
console.log('Server received request to saveData');
let options = {
files: './data/save.json',
changes: req.body
}
updateJsonFile(options);
res.json({data: data}) // if you want to send json response
// Note: please don't send response object more than once
});
添加回答
举报
0/150
提交
取消