Công nghệ, Firebase

Xây dựng Serverless REST API với Firebase Cloud Function & Firebase Database

Kiến trúc ứng dụng Serverless đã trở nên phổ biến trong những năm gần đây. Chúng ta không phải lo lắng về cấu hình, triển khai và khả năng mở rộng của ứng dụng. Thay vì dành thời gian thực hiện các hoạt động đó, chúng tôi có thể tập trung thời gian vào việc xây dựng và thử nghiệm logic ứng dụng để có trải nghiệm người dùng tốt hơn.

Trong bài viết này, tôi sẽ tập trung vào trình bày cách xây dựng REST API đơn giản bằng Firebase Cloud Function và lưu trữ dữ liệu bằng cơ sở dữ liệu Firebase NoQuery. Cả hai đều hoàn toàn không có máy chủ và được cung cấp bởi Firebase dưới dạng dịch vụ với cấp miễn phí và có tính phí.

Những gì tôi sẽ xây dựng:

  • Tạo Functions để tạo, đọc, cập nhật và xóa (CRUD) vào cơ sở dữ liệu Firebase.
  • Triển khai lên Firbase Cloud Functions.

Khởi tạo dự án

Để bắt đầu, chúng ta cần tạo một project. Xem hướng dẫn chi tiết tại đây.

Các bạn có thể khởi tạo dự án với 2 lựa chọn: Javascript hoặc TypeScript, nhưng theo Firebase thì chúng ta nên sử dụng TypeScript để được hỗ trợ tốt nhất.

Sau khi khởi tạo project, chúng ta sẽ bắt đầu viết Function đầu tiên. Chúng ta sẽ thao tác trực tiếp với file index.ts

Create User

Trong bài viết này, tôi sẽ thực hiện tạo User (C), đọc User (R), cập nhật User (U), xóa một User (D).

C – Chúng ta sẽ tạo một User với 3 thuộc tính: user_name, status, key

Read User

Để truy vấn tất cả users trong firebase database, chúng ta cần dùng vòng lặp để duyệt toàn bộ các users trong database. Nó sẽ trả về một mảng users với các thuộc tính đã tạo.

Update User

Để cập nhật user, chúng ta có thể sử dụng phương thức update truyền vào ID (ở đây là thuộc tính key). Nó sẽ chỉ cập nhật những dữ liệu chúng ta gửi lên, sẽ không ghi đè các trường khác, nó chỉ đơn giản trường văn bản.

Delete User

Để xóa một user, chúng ta cần tìm ra user đó thông qua phương thức child(), truyền vào ID (key) và gọi phương thức remove().

Deploy lên Cloud Functions

Rất đơn giản, chúng ta chỉ cần gọi:

firebase deploy

Sẽ mất khoảng 5 phút để deploy, sau khi hoàn thành, url để truy cập chức năng sẽ được cung cấp hoặc bạn có thể truy cập nó từ Firebase Cloud Functions Console. Trong trường hợp này để truy cập API, chúng ta truy cập:

Tôi hy vọng bài viết này giúp ích cho tất cả các bạn muốn triển khai một Serverless đơn giản mà không có kiến ​​thức về dev-ops và sự phức tạp khi tự dựng một Server của riêng bạn. Bạn có thể truy cập tất cả các mã nguồn trong Kho lưu trữ Github của dự án .

Được gắn thẻ , , , , ,

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *