node.js - TypeError:无法读取未定义的属性“db”。使用 mongodb atlas 但在本地使用 mongodb 时没有错误
问题描述
当我使用 mongodb 地图集时出现错误,但是当在本地使用 mongodb(安装在我的计算机上的 mongo)时,代码运行得非常好,没有错误。
http.listen(3000, function(){
console.log("Server started");
mongoClient.connect("mongodb+srv://<username>:<password>@myname.anjzd.mongodb.net/<dbname>?retryWrites=true&w=majority", function(error, client){
var database = client.db("mydatabase");
console.log("Database connected.");
});
解决方案
那是因为你error
从这个回调中得到了一个,因此你client
将被设置为null
.
我猜错误来自您输入的 URL connect
。
<username>
,<password>
并且<dbname>
分别是您的真实用户名、密码和数据库名称的占位符。假设您的真实用户名、密码和数据库分别是ABC
,123
和myDB
,那么您的连接 URL 将是这样的:
let url = "mongodb+srv://ABC:123@myname.anjzd.mongodb.net/myDB?retryWrites=true&w=majority"
如果错误是由其他原因引起的,您可以正确处理以检测原因。
mongoClient.connect(url, function(error, client){
if (error) return console.log(error);
var database = client.db("mydatabase");
console.log("Database connected.");
});
推荐阅读
- arrays - Add a String to a value in an Array Powershell
- sql - 从 NSDictionary 生成 SQL 查询
- javascript - 如何在正则表达式中选择所有不以两个“..”(点)开头的href
- c# - Why access Task.Result in the synchronous mode doesn't cause a deadlock?
- sql - Select with limit for the same id
- android - 无法在 AndroidStudio 中运行我的第一个项目
- python - 如何将带有条件格式的 pandas df.to_html 表格式化为 Outlook?
- python - 带有 LDAP 和本地帐户的 Django Auth
- c# - 映射没有主索引但具有唯一索引的 Oracle 数据库表
- linux - 如何在 bash 中的 ssh 期望脚本中自动执行 ctrl+d 操作?