我在我的 node.js 网站中创建了一个帖子路由,允许用户申请工作。它在本地运行良好并连接到 mongodb atlas,但是当我将应用程序推送到 Heroku 并尝试提交工作申请表时,我的网站超时了。我对此很陌生,不知道该怎么做。谢谢
这是我的代码
var express = require('express');
var mongoose = require('mongoose');
var bodyParser = require('body-parser');
var Applicant = require('./models/applicants');
var sendAppliedEmail = require('./mail/index.js');
var app = express();
app.set('view engine', 'ejs');
app.use(express.static(__dirname + "/public"));
app.use(express.static(__dirname + '/js'));
var port = process.env.PORT || 3000;
mongoose.connect('mongodb+srv://klaurtar:************@cluster0-nakj7.mongodb.net/test?retryWrites=true', {useNewUrlParser: true});
app.use(bodyParser.urlencoded({extended: true}));
最佳答案
我发现 MongoNetworkError 正在发生,如果本地运行正常但 Heroku 运行不正常,则 IP 白名单可能是问题所在。在我们进行任何连接之前,IP 需要在 MongoDB Atlas 中列入白名单。如果您不知道 IP (heroku),可以将其设置为 0.0.0.0/0
我过去遇到过类似的问题,这对我有用。
关于node.js - Mongodb atlas + node.js 在本地工作,但在推送到 Heroku 时停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55407441/