Tổng quan về nhà xuất bản tiện ích

Tiện ích Firebase thực hiện một tác vụ cụ thể hoặc một nhóm nhiệm vụ để phản hồi Yêu cầu HTTP hoặc sự kiện kích hoạt từ Firebase và các sản phẩm khác của Google, chẳng hạn như Giải pháp gửi thông báo qua đám mây của Firebase, Cloud Firestore hoặc Pub/Sub.

Bạn có thể tạo tiện ích mở rộng của riêng mình cho mục đích cá nhân hoặc để chia sẻ với mọi người trong Trung tâm tiện ích Firebase. Ví dụ: tiện ích của bạn có thể thực hiện một hành động cụ thể mà ứng dụng của bạn thường xuyên cần đến hoặc có thể giúp bạn dễ dàng truy cập vào một trong các API của công ty bạn. Sau khi tạo tiện ích, bạn có thể chia sẻ tiện ích đó với người khác. Những người dùng đó có thể cài đặt và định cấu hình tiện ích để sử dụng theo cách riêng của họ Dự án Firebase.

Cấu trúc của tiện ích

Bạn có thể xem một tiện ích là có ba thành phần chính:

  • Mã Cloud Functions, trong JavaScript hoặc TypeScript
  • Siêu dữ liệu mô tả tiện ích của bạn
  • Tài liệu giúp người dùng định cấu hình và sử dụng tiện ích của bạn

Để phát triển một tiện ích, bạn hãy tập hợp các thành phần này thành những phần sau cấu trúc:

example-extension
├── functions
│   ├── integration-tests
│   │   ├── extensions
│   │   │   └── example-extension.env
│   │   ├── firebase.json
│   │   └── integration-test.spec.js
│   ├── index.js
│   └── package.json
├── README.md
├── PREINSTALL.md
├── POSTINSTALL.md
├── CHANGELOG.md
├── icon.png
└── extension.yaml
  • Thư mục functions chứa mã Cloud Functions trong JavaScript hoặc TypeScript. Đây là mã thực hiện các tác vụ của tiện ích để phản hồi các sự kiện do Firebase và các dịch vụ của Google kích hoạt.
  • Tệp extension.yaml chứa siêu dữ liệu về tiện ích của bạn, chẳng hạn như các điều kiện kích hoạt và vai trò truy cập IAM, cũng như bất kỳ tham số nào bạn muốn người dùng có thể định cấu hình.
  • Các tệp PREINSTALL, POSTINSTALLCHANGELOG là tài liệu tối thiểu mà tiện ích của bạn phải có. Các tệp này giúp người dùng tìm hiểu về chức năng của tiện ích, cách sử dụng tiện ích và nội dung cập nhật mà bạn đã thực hiện. Bạn cũng sẽ cung cấp biểu tượng giúp người dùng nhận ra tiện ích của bạn. Chiến lược phát hành đĩa đơn Bảng điều khiển của Firebase, Firebase CLI và Extensions Hub hiển thị nội dung của các tệp này khi người dùng khám phá, cài đặt và quản lý tiện ích của bạn.

Sau khi tạo phần mở rộng, bạn có thể sử dụng Firebase CLI để cài đặt thành một dự án hoặc xuất bản lên Trung tâm tiện ích, nơi mọi người đều có thể khám phá và cài đặt vào dự án của họ.

Tiện ích của tôi có thể tương tác với những sản phẩm nào?

Vì tiện ích Firebase hoạt động bằng cách sử dụng Hàm trên đám mây, nên bạn có thể xem xét câu hỏi về khả năng tích hợp theo hai cách: Những sản phẩm nào có thể kích hoạt hàm của tiện ích?Sau khi được kích hoạt, hàm của tiện ích có thể tương tác với những sản phẩm nào?

Điều kiện kích hoạt hàm được hỗ trợ

Điều kiện kích hoạt thủ công

Trước hết, bạn có thể kích hoạt một hàm theo cách thủ công. Tiện ích Firebase và Cloud Functions hỗ trợ hai cách kích hoạt hàm theo cách thủ công:

  • Điều kiện kích hoạt HTTP: triển khai hàm đến điểm cuối HTTP
  • Hàm có thể gọi: gọi trực tiếp Hàm trên đám mây từ mã ứng dụng iOS, Android hoặc web bằng SDK ứng dụng Firebase.

Khi tiết lộ điểm cuối HTTP qua tiện ích của bạn, tiện ích của bạn có thể tích hợp với mọi dịch vụ web hỗ trợ webhook. Với các hàm có thể gọi, những người dùng cài đặt tiện ích của bạn có thể sử dụng Firebase SDK làm thư viện ứng dụng để truy cập vào API mà tiện ích của bạn triển khai.

Trình kích hoạt dịch vụ Firebase

Hầu hết các sản phẩm của Firebase đều phát những sự kiện có thể kích hoạt Đám mây của tiện ích Hàm.

  • Analytics: kích hoạt các hàm khi Analytics ghi lại một sự kiện
  • Phân phối ứng dụng: kích hoạt các hàm khi tính năng Phân phối ứng dụng kích hoạt một cảnh báo
  • Xác thực: kích hoạt các hàm khi người dùng tạo và xoá tài khoản
  • Cloud Firestore: kích hoạt các hàm khi các trang được tạo, cập nhật hoặc đã xoá
  • Cloud Storage: kích hoạt các hàm khi đối tượng được tải lên, lưu trữ hoặc xoá khỏi bộ chứa
  • Crashlytics: kích hoạt các hàm khi Crashlytics kích hoạt cảnh báo
  • Giám sát hiệu suất: kích hoạt các chức năng khi Giám sát hiệu suất kích hoạt cảnh báo
  • Cơ sở dữ liệu theo thời gian thực: kích hoạt các hàm khi dữ liệu được tạo, cập nhật hoặc đã xoá
  • Cấu hình từ xa: kích hoạt các chức năng khi thông số được cập nhật
  • Test Lab: kích hoạt các hàm khi Test Lab kích hoạt cảnh báo

Điều kiện kích hoạt dịch vụ Google Cloud

Tiện ích cũng có thể bao gồm các hàm kích hoạt một số tiện ích không phải Firebase Các dịch vụ của Google Cloud:

  • Cloud Pub/Sub: tiện ích có thể bao gồm các hàm kích hoạt khi các sự kiện được đăng lên chủ đề Pub/Sub có thể định cấu hình.
  • Cloud Scheduler: tiện ích có thể bao gồm các hàm chạy trên một tập hợp lịch thi đấu
  • Cloud Tasks: một tiện ích có thể bao gồm các hàm có thể được đưa vào hàng đợi bằng cách sử dụng Cloud Tasks. Tiện ích Firebase sử dụng khả năng này để cho phép bạn, như một tác giả của tiện ích, viết các hàm phản hồi "vòng đời" của tiện ích sự kiện: lần đầu được cài đặt trong một dự án, được nâng cấp lên phiên bản mới và đang được định cấu hình lại.
  • Eventarc: một tiện ích có thể bao gồm các hàm kích hoạt khi sự kiện được phát hành đến một kênh Eventarc có thể định cấu hình; ngược lại, một tiện ích có thể phát hành sự kiện của riêng mình đến một kênh Eventarc để cho phép người dùng xác định các hàm của riêng họ kích hoạt từ sự kiện của tiện ích.

Được hỗ trợ trong các hàm

Sau khi chức năng đám mây của tiện ích được kích hoạt, phạm vi việc tích hợp thường là kết thúc mở. Dưới đây là một số điểm nổi bật về những việc bạn có thể làm từ một Hàm trên đám mây:

  • Đọc, ghi và tương tác với bất kỳ Firebase hoặc Google Cloud nào dịch vụ sử dụng vai trò IAM được hỗ trợ.
  • Làm việc với bất kỳ dịch vụ bên thứ ba nào có cung cấp API web.
  • Làm việc với các dịch vụ tuỳ chỉnh nếu bạn cung cấp API web.
  • Chạy hầu hết các thư viện JavaScript, bao gồm cả TensorFlow.js, Express.js, và cứ tiếp tục như vậy.

Cách tạo tiện ích

Hướng dẫn Bắt đầu sẽ hướng dẫn bạn từng bước quá trình xây dựng, thử nghiệm và xuất bản một tiện ích hoàn chỉnh, đồng thời bạn có thể tham khảo để tìm hiểu cách xây dựng một trang web.

Bắt đầu

Sau khi đã đọc qua một lần hướng dẫn bắt đầu, bạn có thể tham khảo các hướng dẫn theo chủ đề riêng lẻ, trong đó giải thích từng nhiệm vụ có liên quan đến việc tạo tiện ích của riêng bạn: