Mongo javascript验证

时间:2017-03-20 12:56:45

标签: javascript mongodb

我正在尝试使用javascript作为安装脚本的一部分来创建mongo用户。

我想知道在继续下一个命令之前如何验证上一个命令的return语句。

例如,在以下脚本中,

var db = db.getSiblingDB("admin");
var status = db.createUser({user: "root",
  pwd: "root",
  roles: [
    { role: "root", db: "admin" }
  ]
});

我需要在运行更多命令之前验证db.createUser是否成功。

有可能吗?当我尝试打印status时,控制台抛出了undefined type错误。

提前致谢。

1 个答案:

答案 0 :(得分:1)

  

我需要在运行更多命令之前验证db.createUser是否成功。

默认情况下,如果没有收到任何错误,您可以依赖该特定命令成功。如果无法添加用户(因为已存在具有此名称的用户),则会引发错误。像这样:

2017-03-20T19:17:42.097+0300 E QUERY    [thread1] Error: couldn't add user: User "root@admin" already exists :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
DB.prototype.createUser@src/mongo/shell/db.js:1267:15
@(shell):1:14

如果您想要更加确定,请在db.getUsers()的输出中查找新添加的用户。