ملاحظة
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على:
MongoDB
توضح هذه المقالة كيفية الاتصال ب Azure Cosmos DB ل MongoDB باستخدام حزمة MongoDB npm الأصلية. بمجرد الاتصال، يمكنك إجراء عمليات على قواعد البيانات والحاويات والعناصر.
إشعار
تتوفر القصاصات البرمجية المثال على GitHub كمشروع JavaScript.
API للوثائق | المرجعية MongoDB حزمة MongoDB (npm)
المتطلبات الأساسية
- حساب Azure مع اشتراك نشط. أنشئ حساباً مجاناً.
- Node.js LTS
- واجهة سطر الأوامر من Azure (واجهة مستوى الاستدعاء) أو Azure PowerShell
- Azure Cosmos DB لمورد MongoDB
إنشاء تطبيق JavaScript الجديد
قم بإنشاء تطبيق JavaScript جديد في مجلد فارغ باستخدام terminal المفضل لديك.
npm init
استخدم الأمر لبدء المطالبات لإنشاء الملفpackage.json
. اقبل الإعدادات الافتراضية للمطالبات.npm init
أضف حزمة MongoDB npm إلى مشروع JavaScript. استخدم الأمر
npm install package
الذي يحدد اسم حزمة npm. يتم استخدام الحزمةdotenv
لقراءة متغيرات البيئة من ملف.env
أثناء التطوير المحلي.npm install mongodb dotenv
لتشغيل التطبيق، استخدم terminal للانتقال إلى دليل التطبيق وتشغيل التطبيق.
node index.js
الاتصال مع برنامج تشغيل MongoDB الأصلي إلى Azure Cosmos DB ل MongoDB
للاتصال بمحرك MongoDB الأصلي بـ Azure Cosmos DB، قم بإنشاء مثيل للفئة MongoClient
. هذه الفئة هي نقطة البداية لتنفيذ جميع العمليات الخاصة بقواعد البيانات.
تحتوي الدالة الإنشائية الأكثر شيوعاً لدى CosmosClient على معلمتين:
المعلمة | قيمة المثال | الوصف |
---|---|---|
url |
متغير البيئة COSMOS_CONNECTION_STRING |
سلسلة الاتصال استخدام واجهة برمجة التطبيقات (API) ل MongoDB لجميع الطلبات |
options |
{ssl: true, tls: true, } |
خيارات MongoDB للاتصال. |
راجع دليل استكشاف الأخطاء وإصلاحها لمشكلات الاتصال.
الحصول على اسم المورد
إنشاء متغير shell لدى resourceGroupName.
# Variable for resource group name resourceGroupName="msdocs-cosmos"
استخدم الأمر
az cosmosdb list
لاسترداد اسم حساب Azure Cosmos DB الأول في مجموعة الموارد وتخزينه في متغير accountName shell.# Retrieve most recently created account name accountName=$( az cosmosdb list \ --resource-group $resourceGroupName \ --query "[0].name" \ --output tsv )
استرداد سلسلة الاتصال الخاصة بك
ابحث عن واجهة برمجة التطبيقات ل MongoDB سلسلة الاتصال من قائمة سلسلة الاتصال للحساب باستخدام
az cosmosdb keys list
الأمر .az cosmosdb keys list --type connection-strings \ --resource-group $resourceGroupName \ --name $accountName
سجّل قيم المفتاح الأساسي. سوف تستخدم بيانات الاعتماد هذه لاحقًا.
تكوين متغيرات البيئة
لاستخدام قيم CONNECTION STRING داخل التعليمات البرمجية الخاصة بك، قم بتعيين هذه القيمة في البيئة المحلية التي تقوم بتشغيل التطبيق. لتعيين متغير البيئة، استخدم المحطة terminal المفضلة لديك لتشغيل الأوامر التالية:
$env:COSMOS_CONNECTION_STRING = "<cosmos-connection-string>"
إنشاء MongoClient بسلسلة الاتصال
أضف تبعيات للإشارة إلى حزم MongoDB وDotEnv npm.
// Use official mongodb driver to connect to the server import { MongoClient } from 'mongodb';
حدد مثيلًا جديدًا للفئة
MongoClient
باستخدام المُنشئ، وprocess.env.
لاستخدم سلسلة الاتصال.// New instance of MongoClient with connection string // for Cosmos DB const url = process.env.COSMOS_CONNECTION_STRING; const client = new MongoClient(url); // connect to the server await client.connect(); // client options const options = client.options; console.log( `Options:\n${Object.keys(options).map(key => `\t${key}: ${options[key]}\n`)}` );
لمزيد من المعلومات حول الطرق المختلفة لإنشاء مثيل MongoClient
، راجع التشغيل السريع لبرنامج تشغيل MongoDB NodeJS.
إغلاق اتصال MongoClient
عند الانتهاء من التطبيق الخاص بك مع الاتصال، تذكر إغلاقه.
.close()
يجب أن يكون الاستدعاء بعد إجراء جميع استدعاءات قاعدة البيانات.
client.close()
استخدام فئات عملاء MongoDB مع Azure Cosmos DB لواجهة برمجة التطبيقات ل MongoDB
قبل البدء في إنشاء التطبيق، لنلقِ نظرة على التدرج الهرمي للموارد في قاعدة بيانات Azure Cosmos DB. تحتوي قاعدة بيانات Azure Cosmos DB على نموذج كائن محدد يُستخدم لإنشاء الموارد والوصول إليها. تنشئ قاعدة بيانات Azure Cosmos DB موارد في تدرج هرمي يتكون من الحسابات وقواعد البيانات والحاويات والمستندات.
رسم تخطيطي هرمي يظهر Azure Cosmos DB لحساب MongoDB في الأعلى. يحتوي الحساب على عقدتين تابعتين لقاعدة البيانات. تتضمن إحدى عُقد قاعدة البيانات عقدتين تابعتين للمجموعة. تتضمن عقدة قاعدة البيانات الأخرى عقدة مجموعة تابعة واحدة. تحتوي عقدة المجموعة الفردية هذه على ثلاث عُقد مستندات تابعة.
يتم تمثيل كل نوع من الموارد من خلال فئة واحدة أو أكثر من فئات JavaScript المرتبطة. فيما يلي قائمة بالفئات الأكثر شيوعاً:
الفصل | الوصف |
---|---|
MongoClient |
توفر هذه الفئة تمثيلا منطقيا من جانب العميل لواجهة برمجة التطبيقات لطبقة MongoDB على Azure Cosmos DB. يتم استخدام كائن العميل لتكوين الطلبات وتنفيذها على الخدمة. |
Db |
هذه الفئة مرجع لإحدى قواعد البيانات التي قد تكون موجودة في الخدمة أو قد لا تكون موجودة بعد. يتم التحقق من صحة قاعدة البيانات من جانب الخادم عند محاولة الوصول إليها أو إجراء عملية ضدها. |
Collection |
هذه الفئة هي إشارة إلى مجموعة قد لا تكون موجودة في الخدمة بعد. يتم التحقق من صحة المجموعة من جانب الخادم عندما تحاول استخدامها. |
توضح لك الأدلة التالية كيفية استخدام كل فئة من هذه الفئات لإنشاء التطبيق الخاص بك.
الدليل:
(راجع أيضًا )
الخطوات التالية
الآن بعد أن قمت بالاتصال بواجهة برمجة تطبيقات لحساب MongoDB، استخدم الدليل التالي لإنشاء قواعد البيانات وإدارتها.