Mongoose: рдкреНрд░рд╛рдорд╛рдгрд┐рдХ рдХреЗ рдмрдЬрд╛рдп MongoClient.connect () рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ (рдпрджрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ Db.prototype.authenticate рдкрджрд╛рд╡рдирдд рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП URI рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 28 рдордИ 2017  ┬╖  34рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: Automattic/mongoose

рдореИрдВ рдПрдХ рдХрдиреЗрдХреНрд╢рди рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рдЬреИрд╕реЗ:

var Mongoose = require('mongoose');
connectionUrl = mongodb://some_login:some_pwd<strong i="6">@some_host</strong>:27017/some_db?authSource=admin
Mongoose.connect(connectionUrl); 

... рдбреЙрдХреНрд╕ рдореЗрдВ рд╕рдВрдХреЗрдд рдХреЗ рд░реВрдк рдореЗрдВ, рд▓реЗрдХрд┐рди NodeJS рдХрдВрд╕реЛрд▓ рдкрд░ рдирд┐рдореНрди рдЪреЗрддрд╛рд╡рдиреА рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛:

Db.prototype.authenticate method will no longer be available 
in the next major release 3.x as MongoDB 3.6 will only allow auth 
against users in the admin db and will no longer allow multiple credentials on a socket. 
Please authenticate using MongoClient.connect with auth credentials.

Connection with database succeeded.

(рдпрджрд┐ рдореБрдЭреЗ ?authSource=admin рдмрдХрд╛рдпрд╛ рд╣реИ рддреЛ рдореБрдЭреЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдлрд▓рддрд╛ рдорд┐рд▓реЗрдЧреА)

рдХреНрдпрд╛ рдЗрд╕ рд╕реНрддрд░ рдкрд░ рдпрд╣ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ (рдХреНрдпрд╛ рд╣рдореЗрдВ рдЕрдЧрд▓реЗ рдЖрдо рд░рд┐рд▓реАрдЬ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?)рдпрд╛ рдореБрдЭреЗ рдЕрднреА рд╕реЗ рдХреНрдпрд╛ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП?

рд╕рдВрд╕реНрдХрд░рдг:

рдиреЛрдб: 7.10.0
рдЖрдо: 4.10.3
MongoDB: 3.4

рдзрдиреНрдпрд╡рд╛рджред

confirmed-bug underlying library issue

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдХреГрдкрдпрд╛ рдХреЗрд╡рд▓ +1 рдЯрд┐рдкреНрдкрдгреА рди рдХрд░реЗрдВ, рд╣рдордиреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддреЗ рд╣реБрдП рдХрд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЯреВрдЯреА рд╣реБрдИ рдмрдЧ рдирд╣реАрдВ рд╣реИ, рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ confirmed-bug рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ 4.11 рддрдХ рдореЛрдВрдЧреВ рд╣реЛрдиреЗ рддрдХ рдареАрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдПрдХ рддрд░реАрдХрд╛ рдпрд╣ рднреА рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдореНрдпреВрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рд╕рдВрджреЗрд╢ рдХреЛ рдЫреБрдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдЧреЛрдбрдм рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЧрдзреЗ рд╣реЛрдиреЗ рдХрд╛ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди +1 рд╕рдВрджреЗрд╢ рдмрд╕ рд╣рдорд╛рд░реЗ рдЗрдирдмреЙрдХреНрд╕ рдореЗрдВ рдмрд╛рдврд╝ рд▓рд╛рддреЗ рд╣реИрдВ, рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд░реЗрд╢рд╛рди рд╣реИ рдЬрдм рдереНрд░реЗрдб рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рд╕рднреА 34 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

+1

+1

+1
рдореИрдХ рдУрдПрд╕ рдПрдХреНрд╕ 10.12.5
рдиреЛрдб: v7.10.0
рдЖрдо: 4.10.3
MongoDB v3.4.4

+1

рд╣рд╛рдБ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рдСрдкрд░реЗрд╢рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП db рдХреЛ рд╕реНрдкрд░реНрд╢ рдХрд░рддреЗ рд╣реИрдВ (рдЬреИрд╕реЗ рдПрдХ рд▓реЗрдЦрди):

рдореИрдВрдиреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ gh_5304 (рд╕рдорд╛рди рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рд╕рд╛рде) рдирд╛рдо рд╕реЗ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдмрдирд╛рдпрд╛ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ dbAdminAnyDatabase рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рджрд┐рдП рдФрд░ рдлрд┐рд░ gh-5304 рд▓рд┐рдП рдХрдиреЗрдХреНрд╢рди рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдЙрд╕ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╡рд┐рд░реБрджреНрдз рдкреНрд░рдорд╛рдгрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рддрд╛рд▓рд┐рдХрд╛ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ admin рддрд╛рд▓рд┐рдХрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреА рд╣реИ:

const mongoose = require('mongoose');
const co = require('co');
mongoose.Promise = global.Promise;
const GITHUB_ISSUE = `gh-5304`;


exec()
  .then(() => {
    console.log('successfully ran program');
    process.exit(0);
  })
  .catch(error => {
    console.error(`Error: ${ error }\n${ error.stack }`);
  });


function exec() {
  return co(function*() {
    const db = mongoose.connect(`mongodb://gh_5304:gh_5304<strong i="11">@localhost</strong>:27017/${ GITHUB_ISSUE }?authSource=admin`);

    const schema = new mongoose.Schema({ name: String });

    const Model = db.model('Model', schema);

    const doc = yield Model.create({ name: 'Test' });
  });
}

рд▓реЙрдЧ рдЖрдЙрдЯрдкреБрдЯ:

Db.prototype.authenticate method will no longer be available in the next major release 3.x
as MongoDB 3.6 will only allow auth against users in the admin db and will no longer allow
multiple credentials on a socket. Please authenticate using MongoClient.connect with auth c
redentials.
successfully ran program

рдореИрдВ рдЗрд╕реЗ "рдмрдЧ" рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░реВрдВрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ tbh рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕рдХрд╛ рдХреНрдпрд╛ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ред рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдЬрд┐рд╕реЗ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП ...

authSource рдореБрджреНрджрд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рдПрдЯреАрдПрдо рд╣реИ, рдпрджрд┐ рдЖрдк some_db рдХрдиреЗрдХреНрдЯ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЖрдкрдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ some_db рдбреЗрдЯрд╛рдмреЗрд╕ рдкрд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд╣реАрдВ рд╣реИ, рддреЛ рдЖрдкрдХреЛ authSource рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рдкреБрди: рдЪреЗрддрд╛рд╡рдиреА, рдпрд╣ рдПрдХ рдРрд╕реА рдЪреАрдЬрд╝ рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рдХрд╛рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣реА рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рд╣реИ, рдЬреЛ рдЗрд╕ рд╕рдордп рд╕рд╣реА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк MongoClient.connect () рдореЗрдВ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рднреА рд╣реБрдб рдХреЗ рдиреАрдЪреЗ mongoose authenticate() рдХреЙрд▓ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рдЕрднреА рдПрдХ рдпреВрдЖрд░рдЖрдИ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдпрд╛ рдпрджрд┐ рдЖрдк рд╣реЛрд╕реНрдЯ, рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛, рдЖрджрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдореИрдВрдЧреЛрдЬрд╝ рдХреЗ рдЖрдВрддрд░рд┐рдХ рдХрдиреЗрдХреНрд╢рди рддрд░реНрдХ рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдБ, рддреЛ MongoClient.connect() 4.11 рдХрд╛ рдЙрдкрдпреЛрдЧ

4.11 рддрдХ, рдореИрдВ рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдореЗрд░реЗ рдЬреНрдЮрд╛рди рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, MongoDB 3.6 рдФрд░ MongoDB рдбреНрд░рд╛рдЗрд╡рд░ 3.0 рдЗрд╕ рд╕рд╛рд▓ рдХреЗ рдЕрдВрдд рддрдХ рдЬрд╛рд░реА рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдХрд┐рд╕реА рднреА рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред

рдЖрдкрдХреЗ рд╡рд┐рд╕реНрддреГрдд рдЬрд╡рд╛рдм рдХреЗ рд▓рд┐рдП @varunjayaraman @ vkarpov15 рдзрдиреНрдпрд╡рд╛рдж;)

рдХреНрдпрд╛ рдХреЛрдИ рдЗрд╕ рд╕рдВрджреЗрд╢ рдХреЛ рдЕрдХреНрд╖рдо / рдЫрд┐рдкрд╛рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЬрд╛рдирддрд╛ рд╣реИ? рдЬрдм рдореИрдВ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдлреИрд▓рд╛рддрд╛ рд╣реВрдВ рддреЛ рдореИрдВ рдЗрд╕реЗ рджреЗрдЦрддрд╛ рд░рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдореЗрд░реА рдирд╕реЛрдВ рдкрд░ рд╣реЛ рд░рд╣рд╛ рд╣реИ! ЁЯШЕ

рдореЗрд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИред

рдореЗрд░рд╛ рднреА рдпрд╣реА рдореБрджреНрджрд╛ рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдореБрдЭреЗ рдореИрдВрдЧреЛрдЬрд╝ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдирд╣реАрдВред

+1

рдпрд╣рд╛рдБ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ

+1

+1
рдЖрдо: 4.10.3
MongoDB v3.4

рдпрджрд┐ рдЖрдк 4.11 рддрдХ рдореЛрдВрдЧреЛрдбрдм рдбреНрд░рд╛рдЗрд╡рд░ рд╕реЗ рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЛ рдмрдВрдж рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рдпрд╣рд╛рдВ рджрд┐рдП рдЧрдП рдЪрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рд╕реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд▓рдХрдбрд╝рд╣рд╛рд░рд╛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

http://mongodb.github.io/node-mongodb-native/2.2/reference/management/logging/

рдЕрдиреНрдпрдерд╛ рдЖрдк рдареАрдХ рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдФрд░ рд╕рдорд╕реНрдпрд╛ рдХреЛ 4.11 рдореЗрдВ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП

+1

const mongoose = рдЖрд╡рд╢реНрдпрдХрддрд╛ ('mongoose');
var db = mongoose.connect ("mongodb: // saigesh: [email protected]: 61121 / tester");

var рдпреЛрдЬрдирд╛ = mongoose.Schema ({
рд╢реАрд░реНрд╖рдХ: рд╕реНрдЯреНрд░рд┐рдВрдЧ,
рд▓реЗрдЦрдХ: рд╕реНрдЯреНрд░рд┐рдВрдЧ,
рд╢рд░реАрд░: рд╕реНрдЯреНрд░рд┐рдВрдЧ,
рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ: [{рд╢рд░реАрд░: рд╕реНрдЯреНрд░рд┐рдВрдЧ, рддрд┐рдерд┐: рджрд┐рдирд╛рдВрдХ}],
рджрд┐рдирд╛рдВрдХ: {рдкреНрд░рдХрд╛рд░: рджрд┐рдирд╛рдВрдХ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ: Date.now},
рдЫрд┐рдкрд╛ рд╣реБрдЖ: рдмреВрд▓рд┐рдпрди,
рдореЗрдЯрд╛: {
рд╡реЛрдЯ: рд╕рдВрдЦреНрдпрд╛,
favs: рд╕рдВрдЦреНрдпрд╛
}
});
рдореЙрдбреНрдпреВрд▓.рдПрдХреНрд╕рдкреЛрд░реНрдЯреНрд╕ = db.model ('рдореЛрдВрдЧреЛрдбрдм', рд╕реНрдХреАрдо);

var BlogPost = рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ ("./ рдореЙрдбрд▓ / mongodb.js");

// рдирдпрд╛ рдореЙрдбрд▓ рдмрдирд╛рдПрдВ
var post = new BlogPost ({рд╢реАрд░реНрд╖рдХ: "рдореЗрд░реА рдкрд╣рд▓реА рдкреЛрд╕реНрдЯ", рд▓реЗрдЦрдХ: "рд╕рдЧрдгреЗрд╢",
рд╢рд░реАрд░: "рд╣рдо рдкреНрд░рд▓реЗрдЦрди рдХреЛ рдЕрдкреНрд░рдЪрд▓рд┐рдд рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ"});

рдкреЛрд╕реНрдЯ.рд╕реЗрд╡реЗ (рдлрд╝рдВрдХреНрд╢рди (рдЗрд░реЗрдЯ)) {
рдЕрдЧрд░ (рдЧрд▓рддреА рд╕реЗ) {
рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рд▓реМрдЯрдирд╛;
}
рдЕрдиреНрдп {
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ ("рдкреЛрд╕реНрдЯ рд╕реЗрд╡реНрдб");
}
});

рддреНрд░реБрдЯрд┐:

рдиреЛрдб .index.js (рдиреЛрдб: 2604) рдкрджрд╛рд╡рдирдд рдХрд░рдирд╛: рдорд╛рдирд╕реВрди: рдПрдордкреНрд░реЛрдорд╛рдЗрдЬ (рдорд╛рдирдЧреЛ рдХрд╛ рдбреЗ)
рдЧрд▓рддреА рд╡рд╛рджрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп) рдкрджрд╛рд╡рдирдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╡рд╛рджреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдкреНрд▓рдЧ рдХрд░реЗрдВ: http://mongoosejs.com/docs/romot.html
Db.prototyp.authenticate рд╡рд┐рдзрд┐ рдЕрдм рдЕрдЧрд▓реА рдкреНрд░рдореБрдЦ рд░рд┐рд▓реАрдЬ 3.x рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрдЧреА рдХреНрдпреЛрдВрдХрд┐ MongoDB 3.6 рдХреЗ рд░реВрдк рдореЗрдВ рдХреЗрд╡рд▓ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рд╣реА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛
db рдФрд░ рдЕрдм рд╕реЙрдХреЗрдЯ рдкрд░ рдХрдИ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред рдХреГрдкрдпрд╛ рдкреНрд░рд╛рдорд╛рдгрд┐рдХ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рд╕рд╛рде MongoClient.connect рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░реЗрдВред

events.js: 160
рдПрд░ рдлреЗрдВрдХ; // рдЕрдирд╣реЗрд▓реНрджреА 'рддреНрд░реБрдЯрд┐' рдШрдЯрдирд╛
^
MongoError: рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╡рд┐рдлрд▓ред
рд╕рдорд╛рд░реЛрд╣ рдореЗрдВ редрдореЛрдВрдЧреЛрдПрд░реНрд░рд░.рдХреНрд░рд┐рдПрдЯ (C: UserssaiganeshDesktopsocket.io-masterexampleschatmongoosedbnode_modulesmongodb-coreliberror.js: 31: 11)
C: UserssaiganeshDesktopsocket.io-masterexampleschatmongoosedbnode_modulesmongodb-corelibconnectionpool.js: 497: 72
рдкреНрд░рдорд╛рдгрд┐рдХрддрд╛рдкреНрд░рд╛рдкреНрддрдХрд░реНрддрд╛рдУрдВ рдкрд░ (C: UserssaiganeshDesktopsocket.io- masterexampleschatchatmongoosedbnode_modulesmongodb-corelibconnectionpool.js: 443
16)
Connection.messageHandler рдкрд░ (C: UserssaiganeshDesktopsocket.io-masterexampleschatmongoosedbnode_modulesmongodb-corelibconnectionpool.js: 4
77: 5)
рд╕реЙрдХреЗрдЯ рдкрд░ред(рд╕реА: UserssaiganeshDesktopsocket.io-masterexampleschatmongoosedbnode_modulesmongodb-corelibconnectionconnection.js: 32
1:22)
emitOne рдкрд░ (рдШрдЯрдирд╛рдПрдБред js: 96: 13)
рд╕реЙрдХреЗрдЯ.рдорд┐рдЯ рдкрд░ (рдИрд╡реЗрдВрдЯ .js: 188: 7)
рдкрдардиреАрдпрдЕрдбрдХрдВрдХ рдкрд░ (_stream_readable.js: 176: 18)
рд╕реЙрдХреЗрдЯ рдкрд░ред Rableable.push (_stream_readable.js: 134: 10)
TCP.onread (net.js: 548: 20) рдкрд░

рдЗрд╕ рддреНрд░реБрдЯрд┐ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВ рдХреМрди рд╕рд╛ MongoDB рдФрд░ Mongoose рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛?

рдпрд╣ рд╕рд╣реА рд╣реИ?

рдореБрдЭреЗ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред MongoDB рд╢реЗрд▓ рд╕рдВрд╕реНрдХрд░рдг v3.4.2
рдкреИрдХреЗрдЬ рдЬрд╕рди рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛: "рдореЛрдВрдЧреЛрдбрдм": "^ 2.2.28", "рдореЛрдВрдЧреЛрдЬрд╝": "^ 4.4.4.4"

"рдореЛрдирдЧреЛрдЬрд╝": "~ 4.10.2", рдХрд╛рдо рд╣реИ!

рдареАрдХ рд╣реИ рдЕрдм рдореИрдВрдиреЗ рдиреЛрдб_рдореЙрдбрд▓ рдлрд╝реЛрд▓реНрдбрд░ рд╣рдЯрд╛ рджрд┐рдП рд╣реИрдВ рдФрд░ рдкреИрдХреЗрдЬ рдХреЛ рдмрджрд▓ рджрд┐рдпрд╛ рд╣реИред рдирд┐рд╢реНрдЪрд┐рдд рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдг "рдореЛрдВрдЧреЛрдЬрд╝" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред "4.10.2"ред Npm рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рдЪрд▓рд╛ рдЧрдпрд╛ рд╣реИ:

тФЬтФАтФм [email protected] тФВ тФФтФАтФА [email protected] тФФтФАтФм [email protected] тФФтФАтФм [email protected] тФФтФАтФА [email protected]
рдореБрдЭреЗ рдбрд░ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдирд╡реАрдирддрдо рдореЛрдВрдЧреЛрдЬрд╝ рдФрд░ рдореЛрдВрдЧреЛ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░реНрд╕ рдХреЗ рдмреАрдЪ рд╕рдВрдЧрддрддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП

рд╣рд╛рдБ, рдореИрдВ рдмрдЧ рдлрд┐рдХреНрд╕ рдХреЗ рд▓рд┐рдП рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ рд╢рд╛рдпрдж рдПрдХ рдЕрдЧрд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг

рдХреГрдкрдпрд╛ рдХреЗрд╡рд▓ +1 рдЯрд┐рдкреНрдкрдгреА рди рдХрд░реЗрдВ, рд╣рдордиреЗ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЗрд╕рдХрд╛ рдЬрд╡рд╛рдм рджреЗрддреЗ рд╣реБрдП рдХрд╣рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЯреВрдЯреА рд╣реБрдИ рдмрдЧ рдирд╣реАрдВ рд╣реИ, рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ confirmed-bug рд░реВрдк рдореЗрдВ рдЪрд┐рд╣реНрдирд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ 4.11 рддрдХ рдореЛрдВрдЧреВ рд╣реЛрдиреЗ рддрдХ рдареАрдХ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдХреЗрд╡рд▓ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рд╣реИ рдФрд░ рдореИрдВрдиреЗ рдПрдХ рддрд░реАрдХрд╛ рдпрд╣ рднреА рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдореНрдпреВрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЖрдк рд╕рдВрджреЗрд╢ рдХреЛ рдЫреБрдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдВрдЧреЛрдбрдм рд▓рдХрдбрд╝рд╣рд╛рд░реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдЧрдзреЗ рд╣реЛрдиреЗ рдХрд╛ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди +1 рд╕рдВрджреЗрд╢ рдмрд╕ рд╣рдорд╛рд░реЗ рдЗрдирдмреЙрдХреНрд╕ рдореЗрдВ рдмрд╛рдврд╝ рд▓рд╛рддреЗ рд╣реИрдВ, рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд░реЗрд╢рд╛рди рд╣реИ рдЬрдм рдереНрд░реЗрдб рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рд╕рдВрдмреЛрдзрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЗ рдореБрджреНрджреЗ @msaiganesh рдХреЗ рд▓рд┐рдП рд╣реИ рдХрд┐ рдЖрдкрдХреЗ db рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдПрдХ рдЕрд▓рдЧ рдореБрджреНрджрд╛ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВ?

+2 (рдореЗрд░реЗ рдФрд░ рдореЗрд░реЗ рд╕рд╣рдХрд░реНрдореА рдХреЗ рд▓рд┐рдП)

"рдореЛрдирдЧреЛрдЬрд╝": "^ 4.10.4"

рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рднреА рдорд┐рд▓ рд░рд╣реА рд╣реИ - рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрдЧ рдХреЗ рд╡рд┐рдкрд░реАрдд рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╕рдВрджреЗрд╢ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЬрд╛рд░реА рд░рдЦрдиреЗ рд╕реЗ рдирд╣реАрдВ рд░реЛрдХрддрд╛ рд╣реИ?

Db.prototyp.authenticate рд╡рд┐рдзрд┐ рдЕрдм рдЕрдЧрд▓реА рдмрдбрд╝реА рд░рд┐рд▓реАрдЬ 3.x рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрдЧреА рдХреНрдпреЛрдВрдХрд┐ MongoDB 3.6 рдХреЗрд╡рд▓ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ db рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдСрд░реНрдХреБрдЯ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рдФрд░ рд╕реЙрдХреЗрдЯ рдкрд░ рдХрдИ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред рдХреГрдкрдпрд╛ рдкреНрд░рд╛рдорд╛рдгрд┐рдХ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рд╕рд╛рде MongoClient.connect рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░реЗрдВред

рдореИрдВ maboose рдХреЗ рд╕рд╛рде mlab рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВрдиреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред

рдЬрдм рдореИрдВ рдЕрдкрдиреЗ MEAN рдРрдк рдкрд░ npm рд╕реНрдЯрд╛рд░реНрдЯ рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдпрд╣ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд░рд╣рддреА рд╣реИред рдореИрдВ рдРрдк рд╢реБрд░реВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред рдХреНрдпрд╛ рдХреЛрдИ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ?

рдХреГрдкрдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрддреНрддрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рдкреНрд░рд╢реНрди рдкреВрдЫрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдирдЬрд╛рдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкрдврд╝реЗрдВ рдФрд░ рдЕрдирдЬрд╛рдиреЗ рдореЗрдВ рд╕рднреА рдХреЛ рдИрдореЗрд▓ рднреЗрдЬреЗрдВ, рдЬрд┐рд╕рдиреЗ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЕрдкрдбреЗрдЯ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рд╣реИред

рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ @JonathanBristow рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛

рдореИрдВ v read these comments in this page but I still can t рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рддрд╛ рд╣реВрдБ !! рдХреНрдпрд╛ рдЖрдк рдореЗрд░рд╛ рдХреЛрдб рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ?

рдпрд╣ рдореЗрд░рд╛ рдХрдиреЗрдХреНрд╢рди рдХреЛрдб рд╣реИ:

mongoose.Promise = рдЖрд╡рд╢реНрдпрдХрддрд╛ ('рдмреНрд▓реВрдмрд░реНрдб');
mongoose.connect ( "MongoDB: //:@ Cluster0-рдареАрдХрд░рд╛-00-00-xlnqd.mongodbред рдиреЗрдЯ: 27017 , рдХреНрд▓рд╕реНрдЯрд░0-рд╢рд╛рд░реНрдж-00-01-xlnqd.mongodbред рдиреЗрдЯ: 27017 , рдХреНрд▓рд╕реНрдЯрд░0-рд╢рд╛рд░реНрдж-00-02-xlnqd.mongodbред рд╢реБрджреНрдз: 27017 /ssl = true & replicaSet = Cluster0-shard-0 & difSource = admin ", function (рдЗрд░реЗрдЯреА) {
рдЕрдЧрд░ (рдЧрд▓рддреА) {
console.log (рдЧрд▓рддреА);
} рдЕрдиреНрдп {
рдХрдВрд╕реЛрд▓.рд▓реЙрдЧ ('рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдХреНрд╕реЗрд╕ рд╕реЗ рдЬреБрдбрд╝реЗ;');
}
});

рдФрд░ рдореБрдЭреЗ рдпрд╣ рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓реА:
"Db.prototyp.authenticate рд╡рд┐рдзрд┐ рдЕрдм рдЕрдЧрд▓реЗ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реЛрдЧреА
MongoDB 3.6 рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рдореБрдЦ рд░рд┐рд▓реАрдЬ 3.x рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдСрд░реНрдХреБрдЯ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ DB рдФрд░ рдЕрдм рдПрдХ рд╕реЙрдХреЗрдЯ рдкрд░ рдХрдИ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ред рдХреГрдкреНрдпрд╛
рдкреНрд░рд╛рдорд╛рдгрд┐рдХ рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓реНрд╕ рдХреЗ рд╕рд╛рде MongoClient.connect рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░реЗрдВред "

@thinkdiff ... рдпрд╣ warning , error ред рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рдЖрдо рддреМрд░ рдкрд░ рдХреБрдЫ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреА рд╣реИ рдЬреЛ рдХреЛрдб рдХреЛ рддреЛрдбрд╝рдиреЗ рд╡рд╛рд▓реА рдирд╣реАрдВ рд╣реИред рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ: рд╕рдВрд░рдЪрдирд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдХреБрдЫ рднреА рдЧрд▓рдд рдирд╣реАрдВ рд╣реИ, рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рди рдХрд░реЗрдВред

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдЬрд╛рд░реА рд╕реНрдкреИрдо рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЙрдХ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛ рдЬреЛ 4.11 рдореЗрдВ рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдмрдВрдж рдХрд░ рджреЗрдЧрд╛, рдЬреЛ рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдХрд┐рд╕реА рднреА рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рджреЗрд░реА рдХреЛ рдЫреЛрдбрд╝рдХрд░ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред 4.10.x рдореЗрдВ рдЗрд╕ рдЪреЗрддрд╛рд╡рдиреА рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдЖрдкрдХреЗ рдзреИрд░реНрдп рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

simonxca picture simonxca  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

CodeurSauvage picture CodeurSauvage  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

AraanBranco picture AraanBranco  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

weisjohn picture weisjohn  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ghost picture ghost  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ