gpt4 book ai didi

mongodb - 发布数据时出现超时错误

转载 作者:太空宇宙 更新时间:2023-11-03 23:47:00 25 4
gpt4 key购买 nike

js。我正在尝试使用node.js和mongodb创建文件上传。我在发布数据时遇到超时错误。我使用的代码是:

app.post('/photos/new', function(req, res) {
var photo = new Photo();
req.form.complete(function(err, fields, files) {
if(err) {
next(err);
} else {
ins = fs.createReadStream(files.file.path);
ous = fs.createWriteStream(__dirname + '/static/uploads/photos/' + files.file.filename);
util.pump(ins, ous, function(err) {
if(err) {
next(err);
} else { photos.save({
filename: files.file.filename,
file: files.file.path
}, function(error, docs) {
res.redirect('/photos');
});
}
});
//console.log('\nUploaded %s to %s', files.photo.filename, files.photo.path);
//res.send('Uploaded ' + files.photo.filename + ' to ' + files.photo.path);
}
});
});

当我点击提交按钮时,出现以下错误。

Error: Timeout POST /photos/new at Object._onTimeout (/home/nodeexmple/node_modules/connect-timeout/index.js:12:22) at Timer.ontimeout (timers_uv.js:84:39)

请帮忙。

最佳答案

看到这个答案...

Error: parser error, 0 of 4344 bytes parsed (Node.js)

您也可以按照 alessioalex 上面的建议使用 req.clearTimeout() 。

我相信您的这部分代码正在产生您应该避免的问题。

photos.save({
filename: files.file.filename,
file: files.file.path
}, function(error, docs) {
res.redirect('/photos');
});

而是像这样使用:

var post = new Post();
post.filename=files.file.filename;
post.file=files.file.path;

然后是这样的:

post.save(function(err) {
if (err)
return postCreationFailed();
req.flash('info', 'photos Succesfully Uploaded');
res.redirect('were u want to redirect');
});

希望这能解决您的问题。

关于mongodb - 发布数据时出现超时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8209289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com