"নতুন ইউআরএল স্ট্রিং পার্সারকে অবমূল্যায়ন করা হয়েছে" এড়িয়ে চলুন সতর্কতার সাথে ইউএনউউরল পার্সার সেট করে সতর্কতা


239

আমার কাছে একটি ডাটাবেস র‌্যাপার ক্লাস রয়েছে যা কিছু মঙ্গোডিবি উদাহরণের সাথে সংযোগ স্থাপন করে:

async connect(connectionString: string): Promise<void> {
        this.client = await MongoClient.connect(connectionString)
        this.db = this.client.db()
}

এটি আমাকে একটি সতর্কতা দিয়েছে:

(নোড: 4833) অবনতি সতর্কতা: বর্তমান ইউআরএল স্ট্রিং পার্সারকে হ্রাস করা হয়েছে, এবং ভবিষ্যতের সংস্করণে সরানো হবে। নতুন পার্সারটি ব্যবহার করতে, বিকল্পটি ব্যবহার করুন {useNewUllParser: সত্য Mong থেকে মঙ্গোক্লিয়েন্টকোনেক্ট nect

connect()পদ্ধতি গ্রহণ করে MongoClientOptionsদ্বিতীয় আর্গুমেন্ট হিসাবে উদাহরণস্বরূপ। তবে এটিতে কোনও সম্পত্তি বলা হয় না useNewUrlParser। আমি সেই সংযোগের স্ট্রিংগুলিতে এই সম্পত্তিগুলি সেট করার চেষ্টা করেছি: mongodb://127.0.0.1/my-db?useNewUrlParser=trueতবে এই সতর্কতার উপরে এর কোনও প্রভাব নেই।

সুতরাং আমি কীভাবে useNewUrlParserসেই সতর্কতাগুলি সরাতে সেট করতে পারি ? এটি আমার পক্ষে গুরুত্বপূর্ণ কারণ স্ক্রিপ্টটি ক্রোন হিসাবে চালানো উচিত এবং সেই সতর্কতার ফলে ট্র্যাশ-মেল স্প্যামের ফলস্বরূপ।

আমি সংশ্লিষ্ট প্যাকেজটিতে mongodbভার্সনে ড্রাইভার ব্যবহার করছি । উভয়ই ব্যবহার করে সর্বশেষতম উপলব্ধ ।3.1.0-beta4@types/mongodb3.0.18npm install

কার্যসংক্রান্ত

মোংডব ড্রাইভারের একটি পুরানো সংস্করণ ব্যবহার করে:

"mongodb": "~3.0.8",
"@types/mongodb": "~3.0.18"

5
এটি betaসংস্করণ থেকে আসছে যা কোনওভাবে উইকএন্ডে এনপি তে প্রকাশিত হয়েছিল। এপিআইটি চূড়ান্ত না হওয়া পর্যন্ত এটি নিয়ে চিন্তা করবেন না। আপনি একটি স্থিতিশীল সংস্করণ ইনস্টল করার সঠিক কাজটি করেছেন।
নীল লুন

1
3.0.০.০ এর উপরে মঙ্গোডবকে কেবল মঙ্গস.কনেক্ট যুক্ত করুন ("মোংডোবি: // লোকালহস্ত: পোর্টনম্বার / ইয়োরডিবি", {ইউজ নিউউর্ল পার্সার: সত্য})
মাজেদুর

উত্তর:


402

আপনার mongoসংস্করণ পরীক্ষা করুন :

mongo --version

আপনি যদি সংস্করণ> = 3.1.0 ব্যবহার করেন তবে আপনার mongoসংযোগ ফাইলটি -> এ পরিবর্তন করুন

MongoClient.connect("mongodb://localhost:27017/YourDB", { useNewUrlParser: true })

অথবা আপনার মঙ্গু সংযোগ ফাইল -> এ

mongoose.connect("mongodb://localhost:27017/YourDB", { useNewUrlParser: true });

আদর্শভাবে, এটি একটি সংস্করণ 4 বৈশিষ্ট্য, তবে v3.1.0 এবং উপরের এটিও সমর্থন করে। পরীক্ষা করে দেখুন MongoDB GitHub বিস্তারিত জানার জন্য।


1
@ অভিষেকসিংহ কেন মঙ্গো> = ৪.০.০ এর সাথে? আমি 3.6.5 ব্যবহার করছি এবং বিরক্তিকর বার্তাও চলে গেছে।
গ্রেজ

হ্যাঁ এটি স্থির। মূলত, এটি একটি ভি 4 বৈশিষ্ট্য তবে v3.1.0 এবং তত উপরে নতুন বৈশিষ্ট্যটিকে সমর্থন করে।
অভিষেক সিনহা

3
এটি সেরা, কেবল যোগ করতে চেয়েছিল, যদি আপনার কলব্যাক থাকে তবে ত্রুটির জন্য esp করুন, কেবল এটি ব্যবহার করুন: mongoose.connect (dbUrl, {useNewUllParser: true}, ফাংশন (err) {console.log ("মঙ্গোডিবি সংযুক্ত", err);})
পিটিএস

ধন্যবাদ,
সমর্থকের

46

যেমনটি লক্ষ্য করা গেছে 3.1.0-beta4যে ড্রাইভারের মুক্তি কিছুটা আগে "বন্যের মধ্যে মুক্তি পেয়েছে"। রিলিজটি মোঙ্গোডিবি ৪.০ আসন্ন প্রকাশে নতুন বৈশিষ্ট্যগুলিকে সমর্থন করার জন্য এবং আরও কিছু এপিআই পরিবর্তন করার জন্য কাজ চলছে part

useNewUrlParserইউআরআই সংযোগটি কীভাবে কার্যকরভাবে কাজ করে তা পাস করার চারপাশে কিছু পরিবর্তনের কারণে বর্তমান সতর্কতার সূত্রপাত ঘটায় এমন একটি পরিবর্তন । আরও পরে।

জিনিসগুলি "স্থির হওয়া" অবধি অবধি রিলিজের জন্য কমপক্ষে ছোট সংস্করণে "পিন" করার পরামর্শ দেওয়া হবে3.0.x :

  "dependencies": {
    "mongodb": "~3.0.8"
  }

3.1.xনোড মডিউলগুলির জন্য "টাটকা" ইনস্টলেশনগুলিতে শাখাটি ইনস্টল করা বন্ধ করা উচিত । আপনি যদি ইতিমধ্যে একটি "সর্বশেষ" রিলিজ ইনস্টল করেন যা "বিটা" সংস্করণ, তবে আপনার প্যাকেজগুলি (এবং package-lock.json) সাফ করা উচিত এবং নিশ্চিত হয়ে নিন যে আপনি এটি একটির সাথেই ঘুরছেন3.0.x সিরিজ রিলিজের ।

প্রকৃতপক্ষে "নতুন" সংযোগ ইউআরআই বিকল্পগুলি ব্যবহার করার ক্ষেত্রে, মূল সীমাবদ্ধতাটি আসলে portসংযোগের স্ট্রিংয়ের মধ্যে অন্তর্ভুক্ত করা :

const { MongoClient } = require("mongodb");
const uri = 'mongodb://localhost:27017';  // mongodb://localhost - will fail

(async function() {
  try {

    const client = await MongoClient.connect(uri,{ useNewUrlParser: true });
    // ... anything

    client.close();
  } catch(e) {
    console.error(e)
  }

})()

এটি নতুন কোডের আরও "কঠোর" নিয়ম। মূল বিষয় হ'ল বর্তমান কোডটি মূলত "নোড-নেটিভ-ড্রাইভার" (এনপিএম mongodb) রিপোজিটরি কোডের অংশ এবং "নতুন কোড" আসলে mongodb-coreলাইব্রেরি থেকে আমদানি করে যা "পাবলিক" নোড ড্রাইভারকে "আন্ডারপিন করে"।

যুক্ত হওয়া "অপশন" এর বিন্দুটি হ'ল নতুন কোডে বিকল্প যুক্ত করে সংক্রমণকে "স্বাচ্ছন্দ্য" দেওয়া হয় যাতে নতুন পার্সার (বাস্তবে প্রায় ভিত্তিক url ) বিকল্পটি যুক্ত করে এবং অবমূল্যায়ন সতর্কতা সাফ করার কোড ব্যবহার করা হয়, এবং তাই যাচাই করা হয় আপনার সংযোগের স্ট্রিংগুলি নতুন পার্সারের প্রত্যাশার সাথে মেনে চলে।

ভবিষ্যতে প্রকাশে 'লিগ্যাসি' পার্সারটি মুছে ফেলা হবে এবং তারপরে নতুন পার্সারটি কেবল বিকল্পটি ছাড়াই ব্যবহার করা হবে। তবে ততক্ষণে এটি প্রত্যাশিত যে সমস্ত বিদ্যমান কোডে নতুন পার্সার আশা করছেন তার বিপরীতে তাদের বিদ্যমান সংযোগের স্ট্রিংগুলি পরীক্ষা করার যথেষ্ট সুযোগ ছিল।

সুতরাং আপনি যদি নতুন চালকের বৈশিষ্ট্যগুলি betaপ্রকাশের সাথে সাথে ব্যবহার করতে শুরু করতে চান তবে উপলভ্য এবং পরবর্তী প্রকাশগুলি ব্যবহার করুন এবং আদর্শটি নিশ্চিত করুন যে আপনি একটি সংযোগ স্ট্রিং সরবরাহ করছেন যা useNewUrlParserবিকল্পটিকে সক্রিয় করে নতুন পার্সারের জন্য বৈধ MongoClient.connect()

আপনার যদি মোগোডিবি ৪.০ রিলিজের পূর্বরূপ সম্পর্কিত বৈশিষ্ট্যগুলিতে অ্যাক্সেসের প্রয়োজন না হয়, তবে 3.0.xপূর্বে উল্লিখিত হিসাবে সংস্করণটিকে একটি সিরিজে পিন করুন । এটি নথিভুক্ত হিসাবে কাজ করবে এবং "পিনিং" এটি নিশ্চিত করে যে 3.1.xরিলিজগুলি প্রত্যাশিত নির্ভরতার উপর নির্ভর করে "আপডেট" হয় না যতক্ষণ না আপনি সত্যিকার অর্থে একটি স্থিতিশীল সংস্করণ ইনস্টল করতে চান।


1
আপনি যখন "বুনোতে ছেড়ে গেছেন" বলছেন তখন কী বোঝাতে চাইছেন সে সম্পর্কে আপনার কাছে আরও তথ্য রয়েছে? 3.1.0-বিটা 4 চিড়িয়াখানা থেকে কীভাবে পালাতে পেরেছিল? আপনি কি এই সম্পর্কে কোনও রেফারেশন উদ্ধৃত করতে পারেন?
উইক

2
@ উইক "রেফারেন্স" অবশ্যই ছিল যে সময়ে প্রশ্নটি জিজ্ঞাসা করা হয়েছিল, npm install mongodbফলে ফলস্বরূপ "বিটা" (প্রশ্নটিতে প্রদর্শিত সংস্করণ স্ট্রিংয়ে স্পষ্টভাবে চিহ্নিত) ইনস্টল করা হবে যেহেতু এটি stableএনপিএম সংগ্রহস্থলের হিসাবে চিহ্নিত হয়েছিল করা উচিত ছিল না। এটি প্রকৃতপক্ষে একটি ত্রুটি ছিল এবং সর্বদা তাই বিবেচনা করা উচিত যদি সংস্করণ স্ট্রিংয়ের মধ্যে alphaবা কোনও কোড প্রকাশের betaঅনুরূপ স্থিতিশীল হিসাবে চিহ্নিত থাকে। স্বাভাবিকভাবেই সময় কেটে গেছে এবং এটি এখন স্থিতিশীল রিলিজগুলির একটি বৈশিষ্ট্য, যতক্ষণ না অবশেষে এটি চলে যাবে।
নিল লুন

45

মঙ্গুজ সংযোগের নীচের হাইলাইট কোডটি মঙ্গুজ ড্রাইভারের জন্য সতর্কবার্তাটি সমাধান করেছে:

mongoose.connect('mongodb://localhost:27017/test', { useNewUrlParser: true });

4
আমার জন্য কাজ না। তবুও পাচ্ছেন: (নোড: 35556) অবচয় সতর্কতা: বর্তমান ইউআরএল স্ট্রিং পার্সার হ্রাস করা হয়েছে, এবং ভবিষ্যতের সংস্করণে সরানো হবে। নতুন পার্সারটি ব্যবহার করতে, বিকল্পটি ব্যবহার করুন {useNewUllParser: সত্য Mong থেকে মঙ্গোক্লিয়েন্টকোনেক্ট।
অ্যালেক্স

আপনার প্যাকেজ.জসন ফাইলটি যখনই এনএমপি ইনস্টল করে নোড_মডিউলগুলি মুছে ফেলা এবং পুনরায় ইনস্টল করে চেষ্টা না করে থাকেন সেখানে সার্ভার.জেএস বা অ্যাপ.জেসগুলি সংরক্ষণ করতে হবে যেখানেই আপনার প্যাকেজটি রয়েছে
নরেন্দ্র মারু

24

বদলানোর কিছুই নেই। শুধুমাত্র সংযোগ ফাংশনে পাস করুন {useNewUrlParser: true }

এটি কাজ করবে:

MongoClient.connect(url, {useNewUrlParser: true}, function(err, db) {
    if(err) {
        console.log(err);
    }
    else {
        console.log('connected to ' + url);
        db.close();
    }
})

আমার যা প্রয়োজন তা কেবল, কিন্তু সতর্কতা বার্তাটি এখনও রয়েছে: -এস
alex351

আমার জন্য কাজ করে, আর কোনও সতর্কতা নেই।
Q. Qiao

17

আপনাকে { useNewUrlParser: true }মঙ্গুজ.কনেক্ট () পদ্ধতিতে যুক্ত করতে হবে।

mongoose.connect('mongodb://localhost:27017/Notification',{ useNewUrlParser: true });

1
এই উত্তরটি অন্যান্য উত্তরগুলির মতো যা কয়েক মাস আগে পোস্ট করা হয়েছিল
ড্যানিয়েল ডাব্লু।

এটি পূর্বের উত্তরের চেয়ে কীভাবে আলাদা?
পিটার মর্টেনসেন

@ পিটারমোরটেনসেন দয়া করে উত্তরটি পোস্ট করার তারিখটি পরীক্ষা করুন
কার্তিকিয়ান

15

সংযোগের স্ট্রিং ফর্ম্যাটটি অবশ্যই মঙ্গডব: // ব্যবহারকারী: পাসওয়ার্ড @ হোস্ট: পোর্ট / ডিবি হতে হবে

উদাহরণ স্বরূপ:

MongoClient.connect('mongodb://user:password@127.0.0.1:27017/yourDB', { useNewUrlParser: true } )

না। MongoClient.connect('mongodb://127.0.0.1:27017/yourDB', { useNewUrlParser: true } )কাজ করে।
নিনো ফিলিউ

এটি পূর্বের উত্তরের চেয়ে কীভাবে আলাদা?
পিটার মর্টেনসেন

15

নিম্নলিখিত হিসাবে ডাটাবেসের সাথে সংযোগ করার আগে আপনাকে নিম্নলিখিত জিনিসগুলি সেট করতে হবে:

const mongoose = require('mongoose');

mongoose.set('useNewUrlParser', true);
mongoose.set('useFindAndModify', false);
mongoose.set('useCreateIndex', true);
mongoose.set('useUnifiedTopology', true);

mongoose.connect('mongodb://localhost/testaroo');

এছাড়াও,

Replace update() with updateOne(), updateMany(), or replaceOne()
Replace remove() with deleteOne() or deleteMany().
Replace count() with countDocuments(), unless you want to count how many documents are in the whole collection (no filter).
In the latter case, use estimatedDocumentCount().

3
শীর্ষ উত্তর হওয়া উচিত। আমার জন্য অন্য সমস্ত উত্তর খারাপভাবে ব্যর্থ হয়েছে।
অ্যান্টনি

দয়া করে উত্তরগুলি চিহ্নিত করুন correctযেন এটি আপনার পক্ষে কাজ করে। এটি আমার পক্ষেও কাজ করেছিল!
অর্পণ ব্যানার্জি

9

নিম্নলিখিত আমার জন্য কাজ করে

const mongoose = require('mongoose');

mongoose.connect("mongodb://localhost/playground", { useNewUrlParser: true,useUnifiedTopology: true })
.then(res => console.log('Connected to db'));

mongooseসংস্করণ 5.8.10


1
এই একটি আমার জন্য কাজ করেছে। আমি ব্যবহার করছি--body-parser": "^1.19.0", "express": "^4.17.1", "mongoose": "^5.9.14"
অর্পণ ব্যানার্জি

8

আমি আপনাকে যোগ করার প্রয়োজন মনে করি না { useNewUrlParser: true }

আপনি যদি ইতিমধ্যে নতুন ইউআরএল পার্সার ব্যবহার করতে চান তবে এটি আপনার। অবশেষে সতর্কতাটি চলে যাবে যখন মংগডিবি তাদের নতুন ইউআরএল পার্সারে চলে যায়।

সংযোগ স্ট্রিং ইউআরআই ফর্ম্যাটে যেমন উল্লেখ করা হয়েছে , আপনাকে পোর্ট নম্বর সেট করার দরকার নেই।

শুধু যোগ { useNewUrlParser: true }করা যথেষ্ট।


1
আমি পোর্ট নম্বর যুক্ত করেছি এবং এখনও ত্রুটি বার্তা পেয়েছি। আমি ত্রুটি বার্তাটি খুব বিভ্রান্তিকর এবং বিভ্রান্তিকর বলে মনে করি: নতুন ফর্ম্যাটটি ব্যবহার করার জন্য আমাকে কেন একটি বার্তা পেলাম, যখন আসলে আমি পুরানো ফর্ম্যাটটি ব্যবহার করি এবং এটি পুরোপুরি কার্যকর হয় ... !! ??
নিকো

2
ভাল প্রশ্ন! মনে রাখবেন এটি একটি সতর্কতা। ত্রুটি নয়। কেবল যোগ useNewUrlParser: trueকরে সতর্কতা অদৃশ্য হয়ে যাবে। তবে এটি কিছুটা বোকা কারণ মঙ্গো তাদের নতুন ইউআরএল পার্সারে চলে গেলে এই অতিরিক্ত পরামিতিটি অচল হয়ে যাবে।
স্যাম

আপনি কীভাবে জানলেন যে পোর্ট নম্বরটি নতুন ইউআরএল পার্সার প্রত্যাশা করে? নতুন ইউআরএল পার্সারটি আসলে কী তা বর্ণনা করে এমন কিছুই আমি খুঁজে পাচ্ছি না
ব্র্যাড

@ ব্র্যাড, সত্যই। আমি ধরে নিচ্ছিলাম যে আপনাকে বন্দর নম্বর যুক্ত করার দরকার ছিল, তবে মঙ্গো চশমা এখনও পোর্ট নম্বরটি beingচ্ছিক বলে উল্লেখ করে। আমি সেই অনুযায়ী আমার উত্তর আপডেট করেছি।
স্যাম

8

ECMAScript 8 / অপেক্ষার জন্য আপডেট হয়েছে

ভুল ECMAScript 8 ডেমো কোড মংগোডিবি Inc সরবরাহ করে এটিও এই সতর্কতা তৈরি করে।

মঙ্গোডিবি নিম্নলিখিত পরামর্শগুলি সরবরাহ করে, যা ভুল

নতুন পার্সারটি ব্যবহার করতে, বিকল্পটি ব্যবহার করুন {useNewUllParser: সত্য Mong থেকে মঙ্গোক্লিয়েন্টকোনেক্ট nect

এটি করার ফলে নিম্নলিখিত ত্রুটি ঘটবে:

প্রকারের ত্রুটি: executeOperationএকটি কলব্যাক হতে হবে চূড়ান্ত যুক্তি

পরিবর্তে বিকল্পটি সরবরাহ করতে হবেnew MongoClient :

নীচের কোডটি দেখুন:

const DATABASE_NAME = 'mydatabase',
    URL = `mongodb://localhost:27017/${DATABASE_NAME}`

module.exports = async function() {
    const client = new MongoClient(URL, {useNewUrlParser: true})
    var db = null
    try {
        // Note this breaks.
        // await client.connect({useNewUrlParser: true})
        await client.connect()
        db = client.db(DATABASE_NAME)
    } catch (err) {
        console.log(err.stack)
    }

    return db
}

7

বন্দর নম্বর দিয়ে এবং এই পার্সার ব্যবহার করে সমস্যার সমাধান করা যেতে পারে: {useNewUrlParser: true}

সমাধান হতে পারে:

mongoose.connect("mongodb://localhost:27017/cat_app", { useNewUrlParser: true });

এটি আমার সমস্যা সমাধান করে।


3
কনসোল নিজেই যোগ করার জন্য সমাধান দিলেন useNewUrlParser propertyমধ্যে connect, কিন্তু আপনার সমাধান সাহায্য করেছিল। তাই উপভোগ!
গণেশদেশমুখ

7

এক্সপ্রেস.জেএস, এপিআই কলিং কেস এবং জেএসওএন সামগ্রী প্রেরণের সম্পূর্ণ উদাহরণটি হ'ল:

...
app.get('/api/myApi', (req, res) => {
  MongoClient.connect('mongodb://user:password@domain.com:port/dbname',
    { useNewUrlParser: true }, (err, db) => {

      if (err) throw err
      const dbo = db.db('dbname')
      dbo.collection('myCollection')
        .find({}, { _id: 0 })
        .sort({ _id: -1 })
        .toArray(
          (errFind, result) => {
            if (errFind) throw errFind
            const resultJson = JSON.stringify(result)
            console.log('find:', resultJson)
            res.send(resultJson)
            db.close()
          },
        )
    })
}

4

আমি এটি কিভাবে এখানে। আমি দু'দিন আগে এনপিএম আপডেট না করা পর্যন্ত আমার কনসোলটিতে ইঙ্গিতটি প্রদর্শিত হয়নি।

.কনেক্টে তিনটি পরামিতি রয়েছে, ইউআরআই, বিকল্পগুলি এবং এরর।

mongoose.connect(
    keys.getDbConnectionString(),
    { useNewUrlParser: true },
    err => {
        if (err) 
            throw err;
        console.log(`Successfully connected to database.`);
    }
);

4

আমরা ব্যবহার করছিলাম:

mongoose.connect("mongodb://localhost/mean-course").then(
  (res) => {
   console.log("Connected to Database Successfully.")
  }
).catch(() => {
  console.log("Connection to database failed.");
});

→ এটি একটি URL পার্সার ত্রুটি দেয়

সঠিক বাক্য গঠনটি হ'ল:

mongoose.connect("mongodb://localhost:27017/mean-course" , { useNewUrlParser: true }).then(
  (res) => {
   console.log("Connected to Database Successfully.")
  }
).catch(() => {
  console.log("Connection to database failed.");
});

1
কিছু বিবরণ যুক্ত করুন
ম্যাথিউস সানি


2

আমার জন্য নিম্নলিখিত কাজটি 5.9.16 সংস্করণে রয়েছে

const mongoose = require('mongoose');

mongoose.set('useNewUrlParser', true);
mongoose.set('useFindAndModify', false);
mongoose.set('useCreateIndex', true);
mongoose.set('useUnifiedTopology', true);

mongoose.connect('mongodb://localhost:27017/dbName')
    .then(() => console.log('Connect to MongoDB..'))
    .catch(err => console.error('Could not connect to MongoDB..', err))

1

এই রেখাগুলি অন্য সমস্ত অবমূল্যায়ন সতর্কতাগুলির জন্য কৌশলটি করেছে:

const db = await mongoose.createConnection(url, { useNewUrlParser: true });
mongoose.set('useCreateIndex', true);
mongoose.set('useFindAndModify', false);

1

আমি মংবড.বি.টি মঙ্গোডিবি ডাটাবেস হিসাবে ব্যবহার করছিলাম। আমি সংযোগের স্ট্রিংটিকে আলাদা আলাদা আলাদা ফোল্ডারে আলাদা করে রেখেছি configএবং ফাইল কীগুলির মধ্যে রেখেছি jjs আমি সংযোগের স্ট্রিংটি রেখেছিলাম যা ছিল:

module.exports = {
  mongoURI: "mongodb://username:password@ds147267.mlab.com:47267/projectname"
};

এবং সার্ভার কোড ছিল

const express = require("express");
const mongoose = require("mongoose");
const app = express();

// Database configuration
const db = require("./config/keys").mongoURI;

// Connect to MongoDB

mongoose
  .connect(
    db,
    { useNewUrlParser: true } // Need this for API support
  )
  .then(() => console.log("MongoDB connected"))
  .catch(err => console.log(err));

app.get("/", (req, res) => res.send("hello!!"));

const port = process.env.PORT || 5000;

app.listen(port, () => console.log(`Server running on port ${port}`)); // Tilde, not inverted comma

আমি উপরের মত সংযোগ স্ট্রিংয়ের পরে আপনাকে {useNewUllParser: true write লিখতে হবে।

সহজ কথায় বলতে গেলে, আপনার এটি করা দরকার:

mongoose.connect(connectionString,{ useNewUrlParser: true } 
// Or
MongoClient.connect(connectionString,{ useNewUrlParser: true } 
    


1

আমি আমার প্রকল্পের জন্য মঙ্গুজ সংস্করণ 5.x ব্যবহার করছি। মঙ্গুজ প্যাকেজটি প্রয়োজনীয়তার পরে, নীচের মতো বিশ্বব্যাপী মান নির্ধারণ করুন।

const mongoose = require('mongoose');

// Set the global useNewUrlParser option to turn on useNewUrlParser for every connection by default.
mongoose.set('useNewUrlParser', true);

0

চরিত্রটি যদি usernameবা passwordথাকে @তবে এটির মতো এটি ব্যবহার করুন:

mongoose
    .connect(
        'DB_url',
        { user: '@dmin', pass: 'p@ssword', useNewUrlParser: true }
    )
    .then(() => console.log('Connected to MongoDB'))
    .catch(err => console.log('Could not connect to MongoDB', err));
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.