sql >> データベース >  >> NoSQL >> MongoDB

AzureでMongoDBに接続できません

    @のよ​​うな文字は、URLの構造を台無しにするため、制限されています。これは、MongoDBがそれを@区切り文字として解釈するためです。これの代わりに:

    var mongoClient = require("mongodb").MongoClient;
    mongoClient.connect("mongodb://myuser:[email protected]@myhost.documents.azure.com:10355/?ssl=true", function (err, db) {
      db.close();
    });
    

    これを使用

    mongoClient.connect("mongodb://myuser:myp%[email protected]:10355/?ssl=true", { 
      uri_decode_auth: true 
    }, function (err, db) {
      db.close();
    });
    

    パスワードをエンコードするには、encodeURIComponent(password)を使用します

    この構文を使用することもできます。

    mongoClient.connect("mongodb://myhost.documents.azure.com:10355/?ssl=true", 
     {user: 'username', pass: '[email protected]'}, function (err, db) {
      db.close();
    });
    

    それ以降のバージョンでは、

    を使用します
    auth: {
           user: 'username',
           password: '[email protected]',
        }
    

    以下のように

    mongoClient.connect("mongodb://myhost.documents.azure.com:10355/?ssl=true", {
      auth: {
       user: 'username',
       password: '[email protected]',
      }}, function (err, db) {
      db.close();
    });
    


    1. Robomongoを使用してMongoDBからJSONをエクスポートする方法

    2. node-mongodb-nativeMongoClientが予期せず接続を閉じました

    3. redisがすでにスタックの一部である場合、なぜMemcachedがRedisと一緒に使用されているのですか?

    4. SpringDataMongoでのObjectIdの問題を使用したファセット+集計クエリ