我在Auth0上创建了一个新的数据库连接,名为local-mongo,我正在尝试使用Create脚本在我的本地mongoDB上创建一个用户但是我一直收到这个Socket Hang Up错误: [Error] Error: socket hang upat createHangUp
[Error] Error: socket hang up at createHangUpError (_http_client.js:211:15) at Socket.socketOnEnd (_http_client.js:303:23) at emitNone (events.js:72:20) at Socket.emit (events.js:166:7) at endReadableNT (_stream_readable.js:913:12) at nextTickCallbackWith2Args (node.js:442:9) at process._tickDomainCallback (node.js:397:17)
Auth0上的Create脚本模板如下:
function create (user, callback) { mongo('mongodb://localhost:27107.com/my-db', function (db) { var users = db.collection('users'); users.findOne({ email: user.email }, function (err, withSameMail) { if (err) return callback(err); if (withSameMail) return callback(new Error('the user already exists')); bcrypt.hash(user.password, 10, function (err, hash) { if (err) { return callback(err); } user.password = hash; users.insert(user, function (err, inserted) { if (err) return callback(err); callback(null); }); }); }); }); }
我是否需要一个ngrok才能连接到本地数据库,还是我在这里缺少另一种方式?任何帮助将不胜感激.
基于上面的脚本工作,你的问题是如何连接localhost然后答案是肯定的.您可能只想使用mongo云服务提供商,如果这适合您的情况,那么您将自动拥有云访问权限.或者只是安装在Amazon EC2实例上并设置安全组以允许访问所需的端口等.
但是,从根本上说,这些是你的选择.需要与数据库服务器建立网络连接.另一种方法是在自定义数据库脚本和后端数据库之间放置一个API.
有关Node.js示例的示例,请执行此操作:
node api sample
对于自定义DB脚本,请参见此处:
postgres custom db scripts
您可以修改上面的内容以改为使用mongo.只是一个想法.