Khi nào tôi nên sử dụng api dữ liệu mongodb?

API dữ liệu MongoDB có thể được sử dụng để truy vấn và cập nhật dữ liệu trong cơ sở dữ liệu MongoDB mà không cần trình điều khiển ngôn ngữ cụ thể

Trình điều khiển ngôn ngữ nên được sử dụng khi có thể, nhưng API dữ liệu MongoDB sẽ hữu ích khi trình điều khiển không có sẵn hoặc trình điều khiển quá mức cần thiết cho ứng dụng


Đọc & Viết với MongoDB Data API

API dữ liệu MongoDB là một tập hợp các điểm cuối HTTPS được định cấu hình sẵn có thể được sử dụng để đọc và ghi dữ liệu vào cơ sở dữ liệu MongoDB Atlas

Với API dữ liệu MongoDB, bạn có thể tạo, đọc, cập nhật, xóa hoặc tổng hợp tài liệu trong cơ sở dữ liệu MongoDB Atlas


Cấu hình cụm

Để sử dụng API dữ liệu, trước tiên bạn phải kích hoạt chức năng từ Giao diện người dùng Atlas

Từ bảng điều khiển MongoDB Atlas, điều hướng đến API dữ liệu trong menu bên trái

Chọn (các) nguồn dữ liệu bạn muốn bật API và nhấp vào Bật API dữ liệu


Cấp độ truy cập

Theo mặc định, không có quyền truy cập nào được cấp. Chọn cấp độ truy cập mà bạn muốn cấp cho API dữ liệu. Các lựa chọn là. Không có quyền truy cập, Chỉ đọc, Đọc và ghi hoặc Truy cập tùy chỉnh


Khóa API dữ liệu

Để xác thực bằng API dữ liệu, trước tiên bạn phải tạo khóa API dữ liệu

Nhấp vào Tạo khóa API, nhập tên cho khóa, sau đó nhấp vào Tạo khóa API

Đảm bảo sao chép khóa API và lưu ở nơi an toàn. Bạn sẽ không có cơ hội khác để xem lại chìa khóa này


Gửi yêu cầu API dữ liệu

Bây giờ chúng ta có thể sử dụng API dữ liệu để gửi yêu cầu đến cơ sở dữ liệu

Trong ví dụ tiếp theo, chúng tôi sẽ sử dụng curl để tìm tài liệu đầu tiên trong bộ sưu tập

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
0 của cơ sở dữ liệu
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
1 của chúng tôi. Chúng tôi đã tải dữ liệu mẫu này trong phần Giới thiệu về Tổng hợp

API dữ liệu cho phép bạn đọc và ghi dữ liệu một cách an toàn bằng các yêu cầu HTTPS tiêu chuẩn. API bao gồm các điểm cuối được tạo tự động, mỗi điểm cuối đại diện cho một thao tác MongoDB. Bạn có thể sử dụng các điểm cuối để tạo, đọc, cập nhật, xóa và tổng hợp tài liệu trong nguồn dữ liệu MongoDB

Ví dụ, điều này

POST lưu trữ tài liệu trong cụm được liên kết bằng cách gọi điểm cuối
https://data.mongodb-api.com/app//endpoint/data/
9.

curl --request POST \  'https://data.mongodb-api.com/app/myapp-abcde/endpoint/data/v1/action/insertOne' \  --header 'Content-Type: application/json' \  --header 'Accept: application/json' \  --header 'api-key: TpqAKQgvhZE4r6AOzpVydJ9a3tB1BLMrgDzLlBLbihKNDzSJWTAHMVbsMoIOpnM6' \  --data-raw '{      "dataSource": "mongodb-atlas",      "database": "learn-data-api",      "collection": "hello",      "document": {        "text": "Hello from the Data API!",      }  }'

ẨN ĐẦU RA

{ "insertedId": "5f1a785e1536b6e6992fd588" }

Khi nào nên sử dụng API dữ liệu

Bạn có thể sử dụng API dữ liệu để tích hợp với bất kỳ ứng dụng hoặc dịch vụ nào hỗ trợ các yêu cầu HTTPS. Ví dụ, bạn có thể

  • gọi API từ chức năng biên không có máy chủ

  • truy vấn Atlas từ một ứng dụng di động

  • truy cập dữ liệu thử nghiệm và ghi nhật ký sự kiện trong quy trình làm việc CI/CD

  • tích hợp Atlas vào cổng API được liên kết

  • kết nối từ một môi trường hiện không được hỗ trợ thông qua Trình điều khiển MongoDB hoặc Realm SDK

Một thao tác được gọi thông qua điểm cuối API có thể sẽ mất nhiều thời gian hơn thao tác MongoDB tương ứng được gọi thông qua Trình điều khiển MongoDB được kết nối. Đối với các trường hợp sử dụng tải cao và các ứng dụng nhạy cảm với độ trễ, chúng tôi khuyên bạn nên kết nối trực tiếp với cơ sở dữ liệu của mình bằng trình điều khiển MongoDB. Để tìm hiểu thêm, hãy truy cập tài liệu Trình điều khiển MongoDB .

URL cơ sở

Điểm cuối API dữ liệu trong một ứng dụng chia sẻ một URL cơ sở. URL sử dụng ID ứng dụng của bạn để trỏ duy nhất đến ứng dụng của bạn và chỉ định phiên bản API dữ liệu nào sẽ gọi. Mỗi điểm cuối có một URL duy nhất được hình thành bằng cách nối thêm tuyến đường của điểm cuối vào URL cơ sở của ứng dụng của bạn

Các ứng dụng được triển khai trên toàn cầu sử dụng định dạng sau

URL cơ sở điểm cuối (Ứng dụng toàn cầu)

https://data.mongodb-api.com/app//endpoint/data/

Điểm cuối trong ứng dụng được triển khai cục bộ sử dụng URL cơ sở dành riêng cho ứng dụng

khu vực triển khai (e. g.
POST /action/findOne
0)

URL cơ sở điểm cuối (Ứng dụng cục bộ)

https://..data.mongodb-api.com/app//endpoint/data/

Thiết lập API dữ liệu

Bạn có thể định cấu hình API dữ liệu cho ứng dụng của mình từ Giao diện người dùng dịch vụ ứng dụng hoặc bằng cách triển khai các tệp cấu hình với Realm CLI

xác thực

Điểm cuối API dữ liệu chạy trong ngữ cảnh của một người dùng cụ thể, điều này cho phép ứng dụng của bạn thực thi các quy tắc và xác thực lược đồ tài liệu cho từng yêu cầu

Theo mặc định, các điểm cuối sử dụng Xác thực ứng dụng, yêu cầu mỗi yêu cầu bao gồm thông tin đăng nhập cho một trong những người dùng ứng dụng của bạn, như khóa API hoặc JWT. Bạn cũng có thể định cấu hình các lược đồ xác thực tùy chỉnh khác để phù hợp với nhu cầu của ứng dụng của mình

Loại phản hồi

Điểm cuối có thể trả về dữ liệu ở một trong hai định dạng dữ liệu, JSON hoặc EJSON

Theo mặc định, các điểm cuối trả về JSON, đây là định dạng dữ liệu tiêu chuẩn được hỗ trợ rộng rãi trên các ngôn ngữ và nền tảng hiện đại. Tuy nhiên, JSON không thể đại diện cho mọi loại dữ liệu mà bạn có thể lưu trữ trong MongoDB và mất thông tin loại đối với một số loại dữ liệu

Bạn cũng có thể định cấu hình các điểm cuối để trả về EJSON, sử dụng các đối tượng JSON có cấu trúc để thể hiện đầy đủ các loại mà MongoDB hỗ trợ. Điều này bảo toàn thông tin loại trong phản hồi nhưng yêu cầu ứng dụng của bạn hiểu cách phân tích cú pháp và sử dụng EJSON

Mẹo

Trình điều khiển MongoDB chính thức bao gồm các phương thức để làm việc với EJSON. Bạn cũng có thể tải xuống trình phân tích cú pháp độc lập như bson trên npm.

Quyền truy cập

API dữ liệu sử dụng các quy tắc truy cập dữ liệu của ứng dụng của bạn để xác định xem người dùng có thể đọc và ghi dữ liệu hay không. Để cho phép các yêu cầu API dữ liệu truy cập vào một bộ sưu tập cụ thể, trước tiên bạn phải xác định các quy tắc cho bộ sưu tập đó

Bạn cũng có thể thiết lập Danh sách truy cập IP để tăng cường bảo mật

Phiên bản API

API dữ liệu sử dụng lược đồ lập phiên bản tích hợp để nâng cấp các điểm cuối theo thời gian trong khi vẫn duy trì khả năng tương thích ngược. Các yêu cầu đến có thể chỉ định phiên bản của điểm cuối sẽ sử dụng trong URL yêu cầu và API dữ liệu có thể phục vụ bất kỳ phiên bản nào mà bạn đã bật

Bạn phải kích hoạt phiên bản mới trước khi người dùng có thể gọi điểm cuối bằng phiên bản đó. Bạn luôn có thể kích hoạt phiên bản Data API mới nhất. Tuy nhiên, bạn không thể bật phiên bản cũ hơn sau khi phiên bản mới hơn đã được phát hành

Các phiên bản sau hiện đang được hỗ trợ

  • POST /action/findOne
    1

  • POST /action/findOne
    2

Gọi điểm cuối API dữ liệu

Bạn có thể gọi điểm cuối API dữ liệu từ bất kỳ ứng dụng khách HTTP tiêu chuẩn nào. Mỗi yêu cầu có thể bao gồm các tiêu đề và đối số cấu hình trong phần thân yêu cầu

Chọn một phiên bản API

Yêu cầu API dữ liệu chỉ định phiên bản API nào sẽ sử dụng trong URL yêu cầu. Yêu cầu có thể chỉ định bất kỳ phiên bản nào được bật cho ứng dụng của bạn

https://data.mongodb-api.com/app//endpoint/data/

Chỉ định định dạng dữ liệu yêu cầu

Yêu cầu API dữ liệu phải bao gồm tiêu đề

POST /action/findOne
3 để chỉ định định dạng dữ liệu được sử dụng trong nội dung yêu cầu

  • Sử dụng

    POST /action/findOne
    4 để thể hiện các loại JSON tiêu chuẩn trong nội dung yêu cầu API dữ liệu

  • Sử dụng

    POST /action/findOne
    5 để biểu thị các loại JSON tiêu chuẩn và các loại EJSON bổ sung trong nội dung yêu cầu API dữ liệu

Chọn một định dạng dữ liệu phản hồi

Một yêu cầu có thể bao gồm tiêu đề

POST /action/findOne
6 để yêu cầu định dạng dữ liệu cụ thể cho nội dung phản hồi, JSON hoặc EJSON. Nếu yêu cầu không bao gồm tiêu đề
POST /action/findOne
6 hợp lệ, thì phản hồi sẽ sử dụng định dạng dữ liệu được chỉ định trong cấu hình API dữ liệu của bạn.

Xác thực yêu cầu

Để giữ cho dữ liệu của bạn an toàn và chính xác, các điểm cuối API dữ liệu được tạo luôn chạy trong ngữ cảnh của một người dùng cụ thể, đã đăng ký và tự động thực thi các quy tắc cũng như lược đồ của ứng dụng của bạn. Các yêu cầu đến phải bao gồm một hoặc nhiều tiêu đề chứa thông tin xác thực người dùng hợp lệ cho một trong những nhà cung cấp xác thực được bật sau đây

  • Email/Mật khẩu

  • Mã API

  • JWT tùy chỉnh

điểm cuối

Tìm một tài liệu duy nhất

điểm cuối

POST /action/findOne

Thí dụ

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
7

Nội dung yêu cầu

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
8

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

lọc

sự vật

Không bắt buộc

A Bộ lọc truy vấn MongoDB . Hành động

POST /action/findOne
8 trả về tài liệu đầu tiên trong bộ sưu tập phù hợp với bộ lọc này.

Nếu bạn không chỉ định

POST /action/findOne
9, hành động sẽ khớp với tất cả tài liệu trong bộ sưu tập

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
70

chiếu

sự vật

Không bắt buộc

A Phép chiếu truy vấn MongoDB . Tùy thuộc vào phép chiếu, tài liệu được trả về sẽ bỏ qua các trường cụ thể hoặc chỉ bao gồm các trường hoặc giá trị được chỉ định

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
70

Phản ứng

Hành động

POST /action/findOne
8 trả về tài liệu phù hợp trong trường
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
73

https://data.mongodb-api.com/app//endpoint/data/
5

Nếu hành động không khớp với bất kỳ tài liệu nào, trường

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
73 là
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
75

https://data.mongodb-api.com/app//endpoint/data/
8

Tìm nhiều tài liệu

điểm cuối

{ "insertedId": "5f1a785e1536b6e6992fd588" }
0

Thí dụ

{ "insertedId": "5f1a785e1536b6e6992fd588" }
1

Nội dung yêu cầu

{ "insertedId": "5f1a785e1536b6e6992fd588" }
2

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

lọc

sự vật

Không bắt buộc

A Bộ lọc truy vấn MongoDB . Hành động

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
76 trả về các tài liệu trong bộ sưu tập phù hợp với bộ lọc này.

Nếu bạn không chỉ định

POST /action/findOne
9, hành động sẽ khớp với tất cả tài liệu trong bộ sưu tập

Nếu bộ lọc khớp với nhiều tài liệu hơn

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
78 đã chỉ định, thì hành động chỉ trả về một tập hợp con của chúng. Bạn có thể sử dụng
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
79 trong các truy vấn tiếp theo để trả về các tài liệu sau này trong tập kết quả

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
70

chiếu

sự vật

Không bắt buộc

A Phép chiếu truy vấn MongoDB . Tùy thuộc vào phép chiếu, các tài liệu được trả về sẽ bỏ qua các trường cụ thể hoặc chỉ bao gồm các trường và giá trị được chỉ định.

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
70

loại

sự vật

Không bắt buộc

A Biểu thức sắp xếp MongoDB . Các tài liệu khớp được trả về theo thứ tự tăng dần hoặc giảm dần của các trường được chỉ định trong biểu thức.

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
70

giới hạn

con số

Không bắt buộc

Số lượng tài liệu phù hợp tối đa để đưa vào tập kết quả trả về. Mỗi yêu cầu có thể trả về tối đa 50.000 tài liệu

1000

nhảy

con số

Không bắt buộc

Số tài liệu phù hợp cần bỏ qua trước khi thêm tài liệu phù hợp vào tập kết quả

0

Phản ứng

Hành động

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
76 trả về một mảng tài liệu phù hợp trong trường
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
84

{ "insertedId": "5f1a785e1536b6e6992fd588" }
3

Nếu hành động không khớp với bất kỳ tài liệu nào, trường

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
84 là một mảng trống

{ "insertedId": "5f1a785e1536b6e6992fd588" }
4

Chèn một tài liệu duy nhất

điểm cuối

{ "insertedId": "5f1a785e1536b6e6992fd588" }
5

Thí dụ

{ "insertedId": "5f1a785e1536b6e6992fd588" }
6

Nội dung yêu cầu

{ "insertedId": "5f1a785e1536b6e6992fd588" }
7

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

tài liệu

sự vật

Yêu cầu

Tài liệu EJSON để chèn vào bộ sưu tập.

Phản ứng

Tác vụ

https://data.mongodb-api.com/app//endpoint/data/
9 trả về giá trị
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
87 của tài liệu được chèn dưới dạng một chuỗi trong trường
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
88

Chèn nhiều tài liệu

điểm cuối

{ "insertedId": "5f1a785e1536b6e6992fd588" }
8

Thí dụ

{ "insertedId": "5f1a785e1536b6e6992fd588" }
9

Nội dung yêu cầu

https://data.mongodb-api.com/app//endpoint/data/
0

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

các tài liệu

mảng đối tượng

Yêu cầu

Một mảng gồm một hoặc nhiều tài liệu EJSON để chèn vào bộ sưu tập.

Phản ứng

Hành động

{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
89 trả về các giá trị
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
87 của tất cả các tài liệu được chèn dưới dạng một chuỗi các chuỗi trong trường
https://data.mongodb-api.com/app//endpoint/data/
51

https://data.mongodb-api.com/app//endpoint/data/
1

Cập nhật một tài liệu duy nhất

điểm cuối

https://data.mongodb-api.com/app//endpoint/data/
2

Thí dụ

https://data.mongodb-api.com/app//endpoint/data/
3

Nội dung yêu cầu

https://data.mongodb-api.com/app//endpoint/data/
4

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

lọc

sự vật

Yêu cầu

A Bộ lọc truy vấn MongoDB . Tác vụ

https://data.mongodb-api.com/app//endpoint/data/
52 sửa đổi tài liệu đầu tiên trong bộ sưu tập phù hợp với bộ lọc này.

cập nhật

sự vật

Yêu cầu

A Biểu thức cập nhật MongoDB chỉ định cách sửa đổi tài liệu phù hợp.

lộn ngược

boolean

Không bắt buộc

Cờ

https://data.mongodb-api.com/app//endpoint/data/
53 chỉ áp dụng nếu không có tài liệu nào phù hợp với
POST /action/findOne
9 được chỉ định. Nếu
https://data.mongodb-api.com/app//endpoint/data/
55, tác vụ
https://data.mongodb-api.com/app//endpoint/data/
52 sẽ chèn một tài liệu mới khớp với bộ lọc với
https://data.mongodb-api.com/app//endpoint/data/
57 đã chỉ định được áp dụng cho nó

sai

Phản ứng

Hành động

https://data.mongodb-api.com/app//endpoint/data/
52 trả về

  • số lượng tài liệu mà bộ lọc phù hợp trong trường

    https://data.mongodb-api.com/app//endpoint/data/
    59

  • số lượng tài liệu phù hợp đã được cập nhật trong trường

    https://data.mongodb-api.com/app//endpoint/data/
    80

https://data.mongodb-api.com/app//endpoint/data/
5

Nếu

https://data.mongodb-api.com/app//endpoint/data/
53 được đặt thành
https://data.mongodb-api.com/app//endpoint/data/
55 và không có tài liệu nào phù hợp với bộ lọc, thì hành động đó sẽ trả về giá trị
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
87 của tài liệu được chèn dưới dạng một chuỗi trong trường
https://data.mongodb-api.com/app//endpoint/data/
84

https://data.mongodb-api.com/app//endpoint/data/
6

Cập nhật nhiều tài liệu

điểm cuối

https://data.mongodb-api.com/app//endpoint/data/
7

Thí dụ

https://data.mongodb-api.com/app//endpoint/data/
8

Nội dung yêu cầu

https://data.mongodb-api.com/app//endpoint/data/
4

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

lọc

sự vật

Yêu cầu

A Bộ lọc truy vấn MongoDB . Hành động

https://data.mongodb-api.com/app//endpoint/data/
85 sửa đổi tất cả các tài liệu trong bộ sưu tập phù hợp với bộ lọc này.

cập nhật

sự vật

Yêu cầu

A Biểu thức cập nhật MongoDB chỉ định cách sửa đổi các tài liệu phù hợp.

lộn ngược

boolean

Không bắt buộc

Cờ

https://data.mongodb-api.com/app//endpoint/data/
53 chỉ áp dụng nếu không có tài liệu nào phù hợp với
POST /action/findOne
9 được chỉ định. Nếu
https://data.mongodb-api.com/app//endpoint/data/
55, tác vụ
https://data.mongodb-api.com/app//endpoint/data/
85 sẽ chèn một tài liệu mới khớp với bộ lọc với
https://data.mongodb-api.com/app//endpoint/data/
57 đã chỉ định được áp dụng cho nó

sai

Phản ứng

Hành động

https://data.mongodb-api.com/app//endpoint/data/
85 trả về

  • số lượng tài liệu mà bộ lọc phù hợp trong trường

    https://data.mongodb-api.com/app//endpoint/data/
    59

  • số lượng tài liệu phù hợp đã được cập nhật trong trường

    https://data.mongodb-api.com/app//endpoint/data/
    80

https://..data.mongodb-api.com/app//endpoint/data/
0

Nếu

https://data.mongodb-api.com/app//endpoint/data/
53 được đặt thành
https://data.mongodb-api.com/app//endpoint/data/
55 và không có tài liệu nào phù hợp với bộ lọc, thì hành động đó sẽ trả về giá trị
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
87 của tài liệu được chèn dưới dạng một chuỗi trong trường
https://data.mongodb-api.com/app//endpoint/data/
84

https://data.mongodb-api.com/app//endpoint/data/
6

Thay thế một tài liệu duy nhất

điểm cuối

https://..data.mongodb-api.com/app//endpoint/data/
2

Thí dụ

https://..data.mongodb-api.com/app//endpoint/data/
3

Nội dung yêu cầu

https://..data.mongodb-api.com/app//endpoint/data/
4

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

lọc

sự vật

Yêu cầu

A Bộ lọc truy vấn MongoDB . Hành động

{ "insertedId": "5f1a785e1536b6e6992fd588" }
08 ghi đè lên tài liệu đầu tiên trong bộ sưu tập phù hợp với bộ lọc này.

thay thế

sự vật

Yêu cầu

Tài liệu EJSON ghi đè lên tài liệu phù hợp.

lộn ngược

boolean

Không bắt buộc

Cờ

https://data.mongodb-api.com/app//endpoint/data/
53 chỉ áp dụng nếu không có tài liệu nào phù hợp với
POST /action/findOne
9 được chỉ định. Nếu
https://data.mongodb-api.com/app//endpoint/data/
55, hành động
{ "insertedId": "5f1a785e1536b6e6992fd588" }
08 sẽ chèn tài liệu
{ "insertedId": "5f1a785e1536b6e6992fd588" }
13

sai

Phản ứng

Hành động

{ "insertedId": "5f1a785e1536b6e6992fd588" }
08 trả về

  • số lượng tài liệu mà bộ lọc phù hợp trong trường

    https://data.mongodb-api.com/app//endpoint/data/
    59

  • số lượng tài liệu phù hợp đã được thay thế trong trường

    https://data.mongodb-api.com/app//endpoint/data/
    80

https://data.mongodb-api.com/app//endpoint/data/
5

Nếu

https://data.mongodb-api.com/app//endpoint/data/
53 được đặt thành
https://data.mongodb-api.com/app//endpoint/data/
55 và không có tài liệu nào phù hợp với bộ lọc, thì hành động đó sẽ trả về giá trị
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
87 của tài liệu được chèn dưới dạng một chuỗi trong trường
https://data.mongodb-api.com/app//endpoint/data/
84

https://data.mongodb-api.com/app//endpoint/data/
6

Xóa một tài liệu

điểm cuối

https://..data.mongodb-api.com/app//endpoint/data/
7

Thí dụ

https://..data.mongodb-api.com/app//endpoint/data/
8

Nội dung yêu cầu

https://..data.mongodb-api.com/app//endpoint/data/
9

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

lọc

sự vật

Yêu cầu

A Bộ lọc truy vấn MongoDB . Tác vụ

{ "insertedId": "5f1a785e1536b6e6992fd588" }
21 xóa tài liệu đầu tiên trong bộ sưu tập phù hợp với bộ lọc này.

Phản ứng

Hành động

{ "insertedId": "5f1a785e1536b6e6992fd588" }
21 trả về số tài liệu đã xóa trong trường
{ "insertedId": "5f1a785e1536b6e6992fd588" }
23

https://data.mongodb-api.com/app//endpoint/data/
0

Xóa nhiều tài liệu

điểm cuối

https://data.mongodb-api.com/app//endpoint/data/
1

Thí dụ

https://data.mongodb-api.com/app//endpoint/data/
2

Nội dung yêu cầu

https://..data.mongodb-api.com/app//endpoint/data/
9

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

lọc

sự vật

Yêu cầu

A Bộ lọc truy vấn MongoDB . Tác vụ

{ "insertedId": "5f1a785e1536b6e6992fd588" }
24 xóa tất cả tài liệu trong bộ sưu tập phù hợp với bộ lọc này.

Phản ứng

Hành động

{ "insertedId": "5f1a785e1536b6e6992fd588" }
24 trả về số lượng tài liệu đã xóa trong trường
{ "insertedId": "5f1a785e1536b6e6992fd588" }
23

https://data.mongodb-api.com/app//endpoint/data/
4

Chạy một đường ống tổng hợp

điểm cuối

https://data.mongodb-api.com/app//endpoint/data/
5

Thí dụ

https://data.mongodb-api.com/app//endpoint/data/
6

Nội dung yêu cầu

https://data.mongodb-api.com/app//endpoint/data/
7

Tên

Loại hình

sự cần thiết

Sự mô tả

Mặc định

nguồn dữ liệu

sợi dây

Yêu cầu

Tên của nguồn dữ liệu được liên kết

cơ sở dữ liệu

sợi dây

Yêu cầu

Tên của cơ sở dữ liệu

thu thập

sợi dây

Yêu cầu

Tên của bộ sưu tập

đường ống

mảng đối tượng

Yêu cầu

A Đường dẫn tổng hợp MongoDB.

Phản ứng

Hành động

{ "insertedId": "5f1a785e1536b6e6992fd588" }
27 trả về tập kết quả của giai đoạn cuối cùng của quy trình dưới dạng một mảng tài liệu trong trường
{
  "dataSource": "",
  "database": "",
  "collection": "",
  "filter": ,
  "projection": 
}
84

https://data.mongodb-api.com/app//endpoint/data/
8

Mã lỗi

Mã số

Sự mô tả

400

Yêu cầu sai

Yêu cầu không hợp lệ. Điều này có thể có nghĩa là

  • Tiêu đề yêu cầu bị thiếu

  • Nội dung yêu cầu không đúng định dạng hoặc được mã hóa không đúng cách

  • Một trường có giá trị với loại không hợp lệ

  • Nguồn dữ liệu được chỉ định bị vô hiệu hóa hoặc không tồn tại

  • Cơ sở dữ liệu hoặc bộ sưu tập được chỉ định không tồn tại

401

Không được phép

Yêu cầu không bao gồm Khóa API được ủy quyền và kích hoạt. Đảm bảo rằng Khóa API của bạn được bật cho cụm

Khi nào bạn nên sử dụng MongoDB?

Việc sử dụng MongoDB cho phép nhóm của bạn tiến xa hơn và nhanh hơn khi phát triển các ứng dụng phần mềm xử lý mọi loại dữ liệu theo cách có thể mở rộng. MongoDB là một lựa chọn tuyệt vời nếu bạn cần. Hỗ trợ phát triển lặp đi lặp lại nhanh chóng .

Tôi có thể sử dụng MongoDB làm API không?

API REST của MongoDB dễ thiết lập và cho phép bạn lưu trữ cũng như truy xuất tài liệu , làm cho nó trở nên tuyệt vời cho Dữ liệu phi cấu trúc. Sử dụng Express JS làm máy chủ web phụ trợ với MongoDB làm kho lưu trữ tài liệu là một cách phổ biến để triển khai chiến lược MongoDB REST API.

Khi nào tôi không nên sử dụng MongoDB?

MongoDB sẽ không phù hợp lắm với các ứng dụng cần. Giao dịch nhiều đối tượng . MongoDB chỉ hỗ trợ các giao dịch ACID cho một tài liệu duy nhất. SQL. SQL nổi tiếng và nhiều người biết cách viết các truy vấn rất phức tạp để thực hiện nhiều việc.

MongoDB có đáng để học vào năm 2022 không?

Dưới đây đề cập đến một số tính năng mạnh mẽ của hệ thống cơ sở dữ liệu NoSQL này làm cho việc học trở nên đáng giá . Không giống như RDBMS nơi dữ liệu được lưu trữ ở dạng bảng, MongoDB lưu trữ dữ liệu ở dạng tài liệu. Bên trong các tài liệu này, dữ liệu được lưu trữ trong các trường giúp nó linh hoạt hơn.