MongoDB Data API
MongoDB Data API
MongoDB Data API-dan MongoDB ma’lumotlar bazasidagi ma’lumotlarni tilga oid drayverlarga ehtiyoj sezmasdan so‘rash va yangilash uchun foydalanish mumkin.
Iloji bo‘lsa, til drayverlaridan foydalanish kerak, ammo MongoDB Data API drayverlar mavjud bo‘lmaganda yoki dastur uchun drayvlar ortiqcha bo‘lsa foydali bo‘ladi.
MongoDB Data API bilan o‘qing va yozing
MongoDB Data API - bu MongoDB Atlas ma’lumotlar bazasiga ma’lumotlarni o‘qish va yozish uchun ishlatilishi mumkin bo‘lgan HTTPS so‘nggi nuqtalarining oldindan sozlangan to‘plami.
MongoDB Data API yordamida siz MongoDB Atlas ma’lumotlar bazasida hujjatlarni yaratishingiz, o‘qishingiz, yangilashingiz, o‘chirishingiz yoki jamlashingiz mumkin.
Klaster konfiguratsiyasi
Data API dan foydalanish uchun avval Atlas UI funksiyasini yoqishingiz kerak.
MongoDB Atlas boshqaruv panelidan chap menyuda Data API-ga o‘ting.
APIni yoqmoqchi bo‘lgan ma’lumotlar manbasini(lar)ini tanlang va “Ma’lumotlar API’sini yoqish” tugmasini bosing.
Kirish darajasi
Odatiy bo‘lib, kirish huquqi berilmaydi. Data API taqdim qilmoqchi bo‘lgan ruxsat darajasini tanlang. Tanlovlar quyidagilardir: Kirish yo‘q, Faqat o‘qish, O‘qish va yozish yoki Maxsus kirish.
Data API kaliti
Data API bilan autentifikatsiya qilish uchun avvalo Data API kalitini yaratishingiz kerak.
"API kalitini yaratish" tugmasini bosing, kalit nomini kiriting va "API kalitini yaratish" tugmasini bosing.
API kalitini nusxalash va xavfsiz joyda saqlashni unutmang. Siz bu kalitni boshqa ko‘rish imkoniyatiga ega bo‘lmaysiz.
Data API so‘rovini yuborish
Endi biz ma’lumotlar bazasiga so‘rov yuborish uchun Data API-dan foydalanishimiz mumkin.
Keyingi misolda biz sample_mflix ma’lumotlar bazasining filmlar to‘plamidagi birinchi hujjatni topish uchun curl-dan foydalanamiz. Biz ushbu namuna ma’lumotlarini “Aggregatsiyalarga kirish” bo‘limiga yukladik.
Ushbu misolni ishga tushirish uchun sizga ilova identifikatori, API kaliti va klaster nomi kerak bo‘ladi.
Ilova identifikatoringizni MongoDB Atlas UI-dagi Data API sahifasining URL so‘nggi nuqtasi maydonida topishingiz mumkin.
Misol
curl --location --request POST 'https://data.mongodb-api.com/app/<DATA API APP ID>/endpoint/data/v1/action/findOne' \
--header 'Content-Type: application/json' \
--header 'Access-Control-Request-Headers: *' \
--header 'api-key: <DATA API KEY>' \
--data-raw '{
"dataSource":"<CLUSTER NAME>",
"database":"sample_mflix",
"collection":"movies",
"projection": {"title": 1}
}'
O‘zingiz sinab ko‘ring »
Data API so‘nggi nuqtalari
Oldingi misolda biz URL manzilimizda findOne oxirgi nuqtasidan foydalanganmiz.
Data API bilan foydalanish uchun bir nechta so‘nggi nuqtalar mavjud.
Barcha so‘nggi nuqtalar asosiy URL bilan boshlanadi:
https://data.mongodb-api.com/app/<Data API App ID>/endpoint/data/v1/action/
Yagona hujjatni toping
Yakuniy nuqta
POST Base_URL/findOne
findOne oxirgi nuqtasi to‘plamdagi bitta hujjatni topish uchun ishlatiladi.
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"filter": <query filter>,
"projection": <projection>
}
Bir nechta hujjatlarni toping
Yakuniy nuqta
POST Base_URL/find
Topish yakuniy nuqtasi to‘plamda bir nechta hujjatlarni topish uchun ishlatiladi.
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"filter": <query filter>,
"projection": <projection>,
"sort": <sort expression>,
"limit": <number>,
"skip": <number>
}
Yagona hujjat (document) kiriting
Yakuniy nuqta
POST Base_URL/insertOne
InsertOne oxirgi nuqtasi bitta hujjatni to‘plamga kiritish uchun ishlatiladi.
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"document": <document>
}
Bir nechta hujjatlarni kiritish
Yakuniy nuqta
POST Base_URL/insertMany
InsertMany so‘nggi nuqta to‘plamga bir nechta hujjatlarni kiritish uchun ishlatiladi.
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"documents": [<document>, <document>, ...]
}
Yagona hujjatni yangilash
Yakuniy nuqta
POST Base_URL/updateOne
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"filter": <query filter>,
"update": <update expression>,
"upsert": true|false
}
Bir nechta hujjatlarni yangilash
Yakuniy nuqta
POST Base_URL/updateMany
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"filter": <query filter>,
"update": <update expression>,
"upsert": true|false
}
Bitta hujjatni o‘chirish
Yakuniy nuqta
POST Base_URL/deleteOne
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"filter": <query filter>
}
Bir nechta hujjatlarni o‘chirish
Yakuniy nuqta
POST Base_URL/deleteMany
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"filter": <query filter>
}
Hujjatlar yig‘indisi
Yakuniy nuqta
POST Base_URL/aggregate
So‘rov organi
Misol
{
"dataSource": "<data source name>",
"database": "<database name>",
"collection": "<collection name>",
"pipeline": [<pipeline expression>, ...]
}
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
