我一直在尝试将带有mongoDb的Next.js应用程序部署到heroku平台上,但没有成功。它可以成功构建,没有任何错误,但是由于某些原因,我的应用无法正常工作。我检查了我的heroku日志,发现了此错误消息。
2020-08-17T21:09:10.846691+00:00 app[web.1]: FetchError: request to http://localhost:3000/api/notes/favicon.ico failed, reason: connect ECONNREFUSED 127.0.0.1:3000
显示主页,我可以导航到其他路线。但是没有显示应该来自mongoDb的数据。我无法执行任何CRUD操作。我在首页和控制台上都收到 500个内部服务器错误。
我对这个问题进行了很多研究,但是还没有找到解决方案。这是我与mongoDb建立连接的地方。我还在heroku GUI中添加了我的配置Vars。
import mongoose from 'mongoose'
const connection = {}
const dbConnect = async () => {
if (connection.isConnected) {
return
}
const db = await mongoose.connect(process.env.MONGO_URI, {
dbName: process.env.DB_NAME,
user: process.env.DB_USER,
pass: process.env.DB_PASS,
useNewUrlParser: true,
useUnifiedTopology: true
})
connection.isConnected = db.connections[0].readyState
console.log(connection.isConnected, 'Db connected')
}
export default dbConnect
请问我在做错什么吗?
答案 0 :(得分:0)
确保你更新你的连接链接到 mongodb URL,而不是你本地主机上的 mongodb...用你的 mongodb url 链接更新你的 .env 文件中的 MONGO_URI 变量