问题描述
我发现这是 Stack Overflow 上的一个很常见的问题,在尝试了 Heroku 支持上的所有建议解决方案后,无济于事,我也会在这里发布我的问题。
我在尝试上传图像时首先遇到此错误,然后我注意到在某些端点上重新加载页面时会发生此错误,例如在 post 端点上,它在组件安装时获取用户的帖子。 在阅读了这个问题之后,似乎没有其他选择 tjen 来实现延迟作业或为创建超时错误的任务设置后台工作程序。我不知道如何实施后台工作,但我继续使用议程包来编辑工作。这就是我所做的:
upload-image.js
exports.uploadPhoto = (req,res) => {
const { file: { mimetype,filename,path },protocol } = req;
const url = `${protocol}://${req.get('host')}`;
User
.findById(req.params.userid)
.exec((error,user) => {
if (error || !user) return res.status(404).json({ message: error.message,});
agenda.define('image upload',{
priority: 'high',concurrency: 10
},job => {
user.photos.push(job.attrs._id);
user.save();
return res.status(201).json({
message: `Image created`,photoUrl: job.attrs.data.photo.photoUrl,});
});
const newPhoto = {
photo: {
mimetype,photoUrl: `${url}/${path}`,name: filename,},owner: user._id,};
agenda.start();
agenda.schedule('in 15 seconds','image upload',newPhoto);
});
};
它在开发中运行良好。但是在heroku上我仍然得到相同的H12 - 超时错误。我还能尝试避免或修复超时错误吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)