CouchDB - API HTTP
Sử dụng tiêu đề yêu cầu HTTP, bạn có thể giao tiếp với CouchDB. Thông qua các yêu cầu này, chúng ta có thể truy xuất dữ liệu từ cơ sở dữ liệu, lưu trữ dữ liệu vào cơ sở dữ liệu dưới dạng tài liệu và chúng ta có thể xem cũng như định dạng các tài liệu được lưu trữ trong cơ sở dữ liệu.
Định dạng yêu cầu HTTP
Trong khi giao tiếp với cơ sở dữ liệu, chúng tôi sẽ sử dụng các định dạng yêu cầu khác nhau như get, head, post, put, delete và copy. Đối với tất cả các hoạt động trong CouchDB, dữ liệu đầu vào và cấu trúc dữ liệu đầu ra sẽ ở dạng đối tượng JavaScript Object Notation (JSON).
Sau đây là các định dạng yêu cầu khác nhau của Giao thức HTTP được sử dụng để giao tiếp với CouchDB.
GET- Định dạng này được sử dụng để lấy một mặt hàng cụ thể. Để nhận các mục khác nhau, bạn phải gửi các mẫu url cụ thể. Trong CouchDB bằng cách sử dụng yêu cầu GET này, chúng ta có thể nhận được các mục tĩnh, tài liệu cơ sở dữ liệu và cấu hình cũng như thông tin thống kê ở dạng tài liệu JSON (trong hầu hết các trường hợp).
HEAD - Phương thức HEAD được sử dụng để lấy tiêu đề HTTP của một yêu cầu GET mà không có nội dung của phản hồi.
POST- Yêu cầu đăng được sử dụng để tải lên dữ liệu. Trong CouchDB sử dụng yêu cầu POST, bạn có thể đặt giá trị, tải lên tài liệu, đặt giá trị tài liệu và cũng có thể bắt đầu một số lệnh quản trị.
PUT - Sử dụng yêu cầu PUT, bạn có thể tạo các đối tượng, cơ sở dữ liệu, tài liệu, khung nhìn và tài liệu thiết kế mới.
DELETE - Sử dụng yêu cầu DELETE, bạn có thể xóa tài liệu, dạng xem và tài liệu thiết kế.
COPY - Sử dụng phương pháp COPY, bạn có thể sao chép tài liệu và đối tượng.
Tiêu đề yêu cầu HTTP
Tiêu đề HTTP phải được cung cấp để có định dạng và mã hóa phù hợp. Trong khi gửi yêu cầu đến máy chủ CouchDB, bạn có thể gửi tiêu đề yêu cầu Http cùng với yêu cầu. Sau đây là các tiêu đề yêu cầu Http khác nhau.
Content-type- Header này được sử dụng để chỉ định kiểu nội dung của dữ liệu mà chúng tôi cung cấp cho máy chủ cùng với yêu cầu. Chủ yếu loại nội dung chúng tôi gửi cùng với yêu cầu sẽ là loại MIME hoặc JSON (ứng dụng / json). Sử dụng Loại nội dung theo yêu cầu rất được khuyến khích.
Accept- Tiêu đề này được sử dụng để chỉ định máy chủ, danh sách các kiểu dữ liệu mà máy khách có thể hiểu được, để máy chủ sẽ gửi phản hồi của nó bằng cách sử dụng các kiểu dữ liệu đó. Nói chung ở đây, bạn có thể gửi danh sách các kiểu dữ liệu MIME mà máy khách chấp nhận, được phân tách bằng dấu hai chấm.
Mặc dù, việc sử dụng Accept trong các truy vấn của CouchDB là không bắt buộc, bạn nên đảm bảo rằng dữ liệu trả về có thể được xử lý bởi máy khách.
Tiêu đề phản hồi
Đây là các tiêu đề của phản hồi được gửi bởi máy chủ. Các tiêu đề này cung cấp thông tin về nội dung do máy chủ gửi dưới dạng phản hồi.
Content-type- Tiêu đề này chỉ định kiểu MIME của dữ liệu được máy chủ trả về. Đối với hầu hết các yêu cầu, kiểu MIME trả về là văn bản / thuần túy.
Cache-control- Tiêu đề này gợi ý máy khách về việc xử lý thông tin do máy chủ gửi. CouchDB chủ yếu trả về giá trị phải xác thực lại, điều này cho biết rằng thông tin nên được xác thực lại nếu có thể.
Content-length - Tiêu đề này trả về độ dài của nội dung được gửi bởi máy chủ, tính bằng byte.
Etag - Tiêu đề này được sử dụng để hiển thị bản sửa đổi cho một tài liệu hoặc một dạng xem.
Mã trạng thái
Sau đây là dạng bảng của mã trạng thái được gửi bởi tiêu đề http và mô tả về nó.
Sr.No. | Mã Trạng thái & Mô tả |
---|---|
1 | 200 − OK Trạng thái này sẽ được đưa ra khi một yêu cầu hoàn tất thành công. |
2 | 201 − Created Trạng thái này sẽ được cấp khi một tài liệu được tạo. |
3 | 202 − Accepted Trạng thái này sẽ được cấp khi một yêu cầu được chấp nhận. |
4 | 404 − Not Found Trạng thái này sẽ được đưa ra khi máy chủ không thể tìm thấy nội dung được yêu cầu. |
5 | 405 − Resource Not Allowed Trạng thái này được đưa ra khi loại yêu cầu HTTP được sử dụng không hợp lệ. |
6 | 409 − Conflict Trạng thái này được đưa ra bất cứ khi nào có bất kỳ xung đột cập nhật nào. |
7 | 415 − Bad Content Type Trạng thái này chỉ ra rằng loại nội dung được yêu cầu không được máy chủ hỗ trợ. |
số 8 | 500 − Internal Server Error Trạng thái này được đưa ra bất cứ khi nào dữ liệu được gửi trong yêu cầu không hợp lệ. |
Đường dẫn URL HTTP
Có một số đường dẫn url nhất định sử dụng, bạn có thể tương tác trực tiếp với cơ sở dữ liệu. Sau đây là định dạng bảng của các đường dẫn url như vậy.
Sr.No. | URL & Hoạt động |
---|---|
1 | PUT /db Url này được sử dụng để tạo cơ sở dữ liệu mới. |
2 | GET /db Url này được sử dụng để lấy thông tin về cơ sở dữ liệu hiện có. |
3 | PUT /db/document Url này được sử dụng để tạo tài liệu / cập nhật tài liệu hiện có. |
4 | GET /db/document Url này được sử dụng để lấy tài liệu. |
5 | DELETE /db/document Url này được sử dụng để xóa tài liệu được chỉ định khỏi cơ sở dữ liệu được chỉ định. |
6 | GET /db/_design/design-doc Url này được sử dụng để lấy định nghĩa của một tài liệu thiết kế. |
7 | GET /db/_design/designdoc/_view/view-name Url này được sử dụng để truy cập dạng xem, tên dạng xem từ tài liệu thiết kế từ cơ sở dữ liệu được chỉ định. |