Heroku 部署错误连接 ECONNREFUSED 127.0.0.1:27017

如何解决Heroku 部署错误连接 ECONNREFUSED 127.0.0.1:27017

这是我用于 mongodb atlas 连接的代码,它显示连接成功,但稍后当我单击某个选项卡时,应用程序崩溃了。我正在通过 heroku 部署应用程序,我给出了以下错误 .app 在 localhost 上运行良好,但在 heroku 网站上崩溃。它有时允许并打开一些页面,但在那之后立即崩溃,我曾尝试在 heroku 网站上修复环境变量,但这没有帮助,所以我切换到仅通过变量使用 mongo 连接链接。任何帮助表示赞赏。 我发现服务器在恰好 30 秒后抛出无法连接的错误,但仍然无法找到导致错误的原因

if (process.env.NODE_ENV !== "production") {
    require('dotenv').config();
}

const sanitize = require('express-mongo-sanitize');
// const dbURL = process.env.DB_URL;
const session = require('express-session');
const MongoStore = require('connect-mongodb-session')(session);
const dbURL = "mongodb+srv://RohanGupta:****************@*****.****.mongodb.net/oddevegame?retryWrites=true&w=majority";

mongoose.connect(dbURL,{
    useNewUrlParser: true,useCreateIndex: true,useUnifiedTopology: true,useFindAndModify: false
})
    .then(() => {
        console.log("Connected Mongo Successfully")
    })
    .catch(err => {
        console.log("Uh Oh Couldnt connect mongo!!")
        console.log(err);
    })


app.use(methodoverride('_method'));
app.use(express.urlencoded({ extended: true }));
app.use(express.static(path.join(__dirname,'/public')));
app.use(express.static(path.join(__dirname,'/resources')));



app.use(session({
    store: new MongoStore({
        url: dbURL,touchAfter: 24 * 3600
    }),name: "blah",secret: 'this is secret',resave: false,saveUninitialized: false,cookie: {
        httpOnly: true,// secure: true,expires: Date.Now() + 1000 * 60 * 60 * 24 * 7,maxAge: 1000 * 60 * 60 * 24 * 7
    }
}));

2021-06-20T07:27:23.462279+00:00 heroku[web.1]: State changed from starting to up
2021-06-20T07:27:23.230556+00:00 app[web.1]: Listening on PORT 4000
2021-06-20T07:27:23.502833+00:00 app[web.1]: Connected Mongo Successfully
2021-06-20T07:27:53.221633+00:00 app[web.1]: /app/node_modules/mongodb/lib/utils.js:698
2021-06-20T07:27:53.221654+00:00 app[web.1]:           throw error;
2021-06-20T07:27:53.221655+00:00 app[web.1]:           ^
2021-06-20T07:27:53.221655+00:00 app[web.1]: 
2021-06-20T07:27:53.221656+00:00 app[web.1]: Error: Error connecting to db: connect ECONNREFUSED 127.0.0.1:27017
2021-06-20T07:27:53.221656+00:00 app[web.1]:     at /app/node_modules/connect-mongodb-session/index.js:78:17 



版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?