我在Auth0上创建了一个新的数据库连接,名为local-mongo,并尝试使用Create脚本在本地mongoDB上创建用户,但我一直收到此套接字挂起错误:
[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上的创建脚本模板如下所示:
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才能连接到本地数据库吗?还是有其他方式让我看不到?任何帮助都将不胜感激。
发布于 2017-02-13 19:46:43
根据上面的脚本,如果你的问题是如何与localhost连接,那么答案是肯定的。
如果适合您的情况,您可能只希望使用mongo云服务提供商,因为您将自动拥有云访问权限。或者只是安装在亚马逊EC2实例上,并设置安全组以允许访问所需的端口等。
但是的,从根本上说,这些都是你的选择。需要有到数据库服务器的网络连接。另一种方法是在自定义数据库脚本和后端数据库之间放置一个API。
有关执行此操作的Node.js示例的示例,请参见此处:
有关自定义数据库脚本的信息,请参阅此处:
您可以将上面的代码修改为使用mongo。这只是一个想法。
https://stackoverflow.com/questions/42202359
复制相似问题