Tạo API NodeJS Express
Ứng dụng Express thường được sử dụng làm ứng dụng phụ trợ trong kiến trúc máy khách-máy chủ trong khi ứng dụng khách có thể được viết bằng React. js hoặc một giải pháp lối vào phổ biến khác và máy chủ có thể được viết bằng Express. Cả hai thực thể dẫn đến kiến trúc máy khách-máy chủ (mối quan hệ giao diện người dùng và phụ trợ) trong khi phần phụ trợ sẽ cần thiết cho (A) logic nghiệp vụ không được hiển thị dưới dạng mã nguồn cho ứng dụng giao diện người dùng -- nếu không, nó sẽ có thể truy cập được trong trình duyệt . g. (các) cơ sở dữ liệu) Show
Tuy nhiên, đừng nhầm ứng dụng khách luôn là giao diện người dùng và ứng dụng máy chủ luôn là phụ trợ tại đây. Những điều khoản này không thể được trao đổi một cách dễ dàng. Trong khi ứng dụng giao diện người dùng thường là thứ được nhìn thấy trong trình duyệt, thì phần phụ trợ thường thực hiện logic nghiệp vụ không được hiển thị trong trình duyệt và cũng thường kết nối với cơ sở dữ liệu
cURL cho API RESTNếu bạn chưa nghe nói về cURL, phần này sẽ cung cấp cho bạn một cuộc thảo luận ngắn về cURL là gì và cách sử dụng nó để tương tác với API (REST). Định nghĩa được lấy từ Wikipedia cho biết. "Xoăn [. ] là một dự án phần mềm máy tính cung cấp thư viện và công cụ dòng lệnh để truyền dữ liệu bằng các giao thức khác nhau. " Vì REST là một kiến trúc sử dụng HTTP, một máy chủ hiển thị API RESTful có thể được sử dụng bằng cURL, vì HTTP là một trong các giao thức khác nhau Đầu tiên, hãy cài đặt nó một dòng lệnh. Hiện tại, hướng dẫn cài đặt dành cho người dùng MacOS, nhưng tôi đoán bằng cách tra cứu trực tuyến "curl for windows", bạn sẽ tìm thấy hướng dẫn cài đặt cho hệ điều hành mong muốn của mình (e. g. Windows) cũng vậy. Trong hướng dẫn này, chúng tôi sẽ sử dụng Homebrew để cài đặt nó. Nếu bạn chưa có Homebrew, hãy cài đặt nó bằng lệnh sau trên dòng lệnh
Tuyến đường cao tốc. Phương thức HTTP là hoạt động RESTExpress là một lựa chọn hoàn hảo cho máy chủ khi cần tạo và hiển thị API (e. g. REST API) để giao tiếp dưới dạng ứng dụng khách với ứng dụng máy chủ của bạn. Trước đây, bạn đã triển khai một tuyến đường Express, tuyến đường này sẽ gửi thông báo "Xin chào thế giới. ", mà bạn đã truy cập qua trình duyệt và cURL. Cuối cùng, hãy thiết lập nhiều tuyến đường hơn để chứa API RESTful cho ứng dụng Express của bạn. Thêm các tuyến sau vào ứng dụng Express của bạn trong khi bản thân URI không thay đổi, nhưng phương thức được sử dụng từ phiên bản Express của bạn
Tuyến đường cao tốc. URI là Tài nguyên RESTMột khía cạnh quan trọng khác của REST là mọi URI hoạt động như một tài nguyên. Cho đến nay, bạn chỉ thao tác trên URI gốc với các thao tác CRUD của mình, thao tác này không thực sự đại diện cho tài nguyên trong REST. Ngược lại, một tài nguyên có thể là một tài nguyên người dùng, ví dụ. Thay đổi các tuyến đường được giới thiệu trước đó của bạn thành các tuyến đường sau 1
Ý nghĩa của REST với ExpressCó thể bạn vẫn đang thắc mắc. Giá trị nào mang lại sự kết hợp giữa các phương thức URI và HTTP -- tạo nên phần lớn triết lý REST -- cho ứng dụng của tôi? Hãy tưởng tượng rằng chúng ta sẽ không chỉ trả về kết quả như hiện tại, mà thay vào đó sẽ hành động đúng với thao tác nhận được. Chẳng hạn, máy chủ Express có thể được kết nối với cơ sở dữ liệu lưu trữ các thực thể người dùng trong bảng người dùng. Bây giờ, khi sử dụng API REST với tư cách là khách hàng (e. g. cURL, trình duyệt hoặc cả React. js), bạn có thể truy xuất tất cả người dùng từ cơ sở dữ liệu bằng phương thức HTTP GET trên URI 0 hoặc, trên cùng một tài nguyên, tạo người dùng mới bằng phương thức HTTP POST
Phần mềm trung gian Express cấp ứng dụngTrước khi chúng tôi chuyển sang phần mềm trung gian Express một lần nữa, hãy xem cách một kịch bản tạo thông báo có thể được triển khai trong ứng dụng Express của chúng tôi. Vì chúng tôi đang tự tạo một tin nhắn mà không có cơ sở dữ liệu, chúng tôi cần một thư viện trợ giúp để tạo các số nhận dạng duy nhất cho chúng tôi. Cài đặt thư viện trợ giúp này trên dòng lệnh 8
Các mô hình mô-đun trong Express dưới dạng nguồn dữ liệuHiện tại, tất cả triển khai của chúng tôi nằm trong src/index. tập tin js. Tuy nhiên, tại một số điểm, bạn có thể muốn mô đun hóa các chi tiết triển khai của mình và đưa chúng vào các tệp và thư mục chuyên dụng trong khi src/index. js chỉ nên quan tâm đến việc đặt mọi thứ lại với nhau và khởi động ứng dụng. Trước khi chúng tôi đi sâu vào mô đun hóa định tuyến, trước tiên hãy xem cách chúng tôi có thể mô đun hóa dữ liệu mẫu của mình trong cái gọi là mô hình. Từ thư mục gốc của bạn, gõ các lệnh sau để tạo cấu trúc thư mục/tệp cho các mô hình 3
Định tuyến theo mô-đun với Bộ định tuyến tốc hànhCho đến nay, bạn đã gắn các tuyến trực tiếp trên phiên bản ứng dụng Express trong src/index. tập tin js. Điều này cuối cùng sẽ trở nên dài dòng, bởi vì tệp này chỉ nên quan tâm đến tất cả các chủ đề quan trọng để bắt đầu ứng dụng của chúng tôi. Nó không nên tiết lộ chi tiết thực hiện của các tuyến đường. Bây giờ, cách tốt nhất là di chuyển các tuyến đường vào cấu trúc tệp/thư mục chuyên dụng của chúng. Đó là lý do tại sao chúng tôi muốn cung cấp cho mỗi tài nguyên REST tệp riêng của chúng trong một thư mục chuyên dụng. Từ thư mục gốc của bạn, nhập dòng lệnh sau vào dòng lệnh để tạo cấu trúc thư mục/tệp cho các tuyến mô-đun 7 |