MEAN.JS - API REST

Trong chương này, chúng ta sẽ thấy ứng dụng của chúng ta tương tác thông qua API REST với cơ sở dữ liệu của chúng ta bằng cách sử dụng các phương thức HTTP. Thuật ngữ REST là viết tắt của REpresentational State Transfer, là một kiểu kiến ​​trúc được thiết kế để giao tiếp với các dịch vụ web và API là viết tắt của Application Program Interface cho phép các ứng dụng tương tác với nhau.

Đầu tiên, chúng tôi sẽ tạo RESTful API để lấy tất cả các mục, tạo mục và xóa một mục. Đối với mỗi mục, _id sẽ được tạo tự động bởi MongoDB. Bảng dưới đây mô tả cách ứng dụng sẽ yêu cầu dữ liệu từ API -

Phương thức HTTP Đường dẫn URL Sự miêu tả
ĐƯỢC

/api/students

Nó được sử dụng để lấy tất cả các sinh viên từ bộ sưu tập Sinh viên.
BÀI ĐĂNG

/api/students/send

Nó được sử dụng để tạo một bản ghi sinh viên trong bộ sưu tập Sinh viên.
XÓA BỎ

/api/students/student_id

Nó được sử dụng để xóa hồ sơ sinh viên khỏi bộ sưu tập Sinh viên.

Các tuyến API RESTful

Đầu tiên chúng ta sẽ thảo luận về Phương pháp Đăng trong Các tuyến API RESTful.

BÀI ĐĂNG

Đầu tiên, hãy tạo một bản ghi trong bộ sưu tập Sinh viên thông qua API REST của chúng tôi. Mã cho trường hợp cụ thể này có thể được tìm thấy trong tệp server.js . Để tham khảo, một phần mã được dán ở đây -

app.post('/api/students/send', function (req, res) {
   var student = new Student(); // create a new instance of the student model
   student.name = req.body.name; // set the student name (comes from the request)
   student.save(function(err) {
      if (err)
         res.send(err);
         res.json({ message: 'student created!' });
   });
});

Chấp hành

Bạn có thể tải xuống mã nguồn cho ứng dụng này trong liên kết này . Tải xuống tệp zip; giải nén nó trong hệ thống của bạn. Mở thiết bị đầu cuối và chạy lệnh dưới đây để cài đặt các phụ thuộc mô-đun npm.

$ cd mean-demon-consuming_rest_api
$ npm install

Để phân tích cú pháp yêu cầu, chúng ta cần gói phân tích cú pháp nội dung. Do đó, hãy chạy lệnh dưới đây để đưa vào ứng dụng của bạn.

npm install --save body-parser

Mã nguồn đính kèm đã có sự phụ thuộc này, do đó không cần chạy lệnh trên, nó chỉ dành cho thông tin của bạn.

Để chạy ứng dụng, hãy điều hướng đến thư mục dự án mới được tạo của bạn và chạy bằng lệnh dưới đây:

npm start

Bạn sẽ nhận được xác nhận như trong hình dưới đây -

Có nhiều công cụ để kiểm tra các lệnh gọi API, ở đây chúng tôi đang sử dụng một trong những tiện ích mở rộng thân thiện với người dùng dành cho Chrome có tên là Postman REST Client .

Mở Ứng dụng khách Postman REST, nhập URL là http://localhost:3000/api/students/send, chọn phương thức ĐĂNG . Tiếp theo, nhập dữ liệu yêu cầu như hình dưới đây -

Lưu ý rằng chúng tôi đang gửi dữ liệu tên dưới dạng x-www-form-urlencoded . Điều này sẽ gửi tất cả dữ liệu của chúng tôi đến máy chủ Node dưới dạng chuỗi truy vấn.

Bấm vào nút Gửi để tạo hồ sơ học sinh. Thông báo thành công sẽ xuất hiện như hình dưới đây -

ĐƯỢC

Tiếp theo, hãy lấy tất cả hồ sơ học sinh từ mongodb. Lộ trình sau cần phải được viết. Bạn có thể tìm thấy mã đầy đủ trong tệp server.js .

app.get('/api/students', function(req, res) {
   // use mongoose to get all students in the database
   Student.find(function(err, students) {
      // if there is an error retrieving, send the error.
      // nothing after res.send(err) will execute
      if (err)
         res.send(err);
      res.json(students); // return all students in JSON format
   });
});

Tiếp theo, mở Ứng dụng khách Postman REST, nhập URL là

http://localhost:3000/api/students, chọn phương thức GET và bấm vào nút Gửi để nhận tất cả học sinh.

XÓA BỎ

Tiếp theo, hãy xem cách xóa bản ghi khỏi bộ sưu tập mongo của chúng tôi thông qua lệnh gọi api REST.

Lộ trình sau cần phải được viết. Bạn có thể tìm thấy mã đầy đủ trong tệp server.js .

app.delete('/api/students/:student_id', function (req, res) {
   Student.remove({
      _id: req.params.student_id
   }, function(err, bear) {
      if (err)
         res.send(err);
      res.json({ message: 'Successfully deleted' });
   });
});

Tiếp theo, mở Ứng dụng khách Postman REST, nhập URL là

http://localhost:3000/api/students/5d1492fa74f1771faa61146d

(ở đây 5d1492fa74f1771faa61146d là bản ghi mà chúng tôi sẽ xóa khỏi bộ sưu tập Sinh viên).

Chọn phương pháp XÓA và nhấp vào nút Gửi để nhận tất cả học sinh.

Bạn có thể kiểm tra MongoDB để tìm dữ liệu đã xóa bằng cách gọi GET tới http://localhost:3000/api/students/5d1492fa74f1771faa61146d.