2017-03-20 16 views
-1

私は、インストールスクリプトの一部としてjavascriptを使用してmongoユーザーを作成しようとしています。Mongo javascript validation

次の手順に進む前に、前のコマンドの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

さらなるコマンドを実行する前に、db.createUserが成功したかどうかを確認する必要があります。デフォルトでは

、あなたはすべてのエラーを取得していない場合は、この特定のコマンドは、成功したことをを頼ることができます。ユーザーを追加できない場合(この名前のユーザーが既に存在するため)、エラーが発生します。このような何か:

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

あなたは余分なことを確認したい場合は、db.getUsers()の出力で新しく追加されたユーザーを探します。

+0

javascriptから検証する方法はありますか?このmongoレベルのエラーログをjsに取り込むことはできますか? – Nataraj

+0

@Natarajあなたは試しましたか?クライアント側に伝播する必要があります。 –