EventContext interface

Bối cảnh trong đó một sự kiện đã xảy ra.

EventContext mô tả: – Thời gian một sự kiện xảy ra. – Mã nhận dạng duy nhất của sự kiện. – Tài nguyên nơi sự kiện xảy ra, nếu có. – Cho phép yêu cầu đã kích hoạt sự kiện, nếu có và có thể.

Chữ ký:

export interface EventContext<Params = Record<string, string>> 

Thuộc tính

Tài sản Loại Mô tả
xác thực { mã thông báo: đối tượng; uid: string; } Thông tin xác thực của người dùng đã kích hoạt chức năng.
authType "QUẢN TRỊ VIÊN" | "NGƯỜI DÙNG" | "KHÔNG XÁC THỰC" Cấp độ quyền của một người dùng.
eventId chuỗi Giá trị nhận dạng riêng biệt của sự kiện.
eventType chuỗi Loại sự kiện.
tham số Thông số Một đối tượng chứa giá trị của các ký tự đại diện trong tham số path được cung cấp cho phương thức để kích hoạt Cơ sở dữ liệu theo thời gian thực.
tài nguyên Tài nguyên Tài nguyên đã tạo ra sự kiện.
dấu thời gian chuỗi Dấu thời gian cho sự kiện dưới dạng chuỗi RFC 3339.

EventContext.auth

Thông tin xác thực của người dùng đã kích hoạt chức năng.

Đối tượng này chứa các thuộc tính uidtoken dành cho người dùng đã xác thực. Để biết thêm thông tin chi tiết bao gồm cả khoá mã thông báo, hãy xem tài liệu tham khảo về quy tắc bảo mật.

Trường này chỉ được điền sẵn cho các điều kiện kích hoạt Cơ sở dữ liệu theo thời gian thực và Hàm có thể gọi. Đối với người dùng chưa được xác thực, trường này rỗng. Đối với người dùng quản trị Firebase và các loại sự kiện không cung cấp thông tin người dùng, trường này sẽ không tồn tại.

Chữ ký:

auth?: {
        token: object;
        uid: string;
    };

EventContext.authType

Cấp độ quyền của một người dùng.

Các giá trị hợp lệ là:

  • ADMIN: Người dùng hoặc người dùng nhà phát triển được xác thực thông qua tài khoản dịch vụ.

  • USER: Người dùng đã biết.

  • UNAUTHENTICATED: Hành động chưa được xác thực

  • null: Đối với các loại sự kiện không cung cấp thông tin người dùng (tất cả ngoại trừ Cơ sở dữ liệu theo thời gian thực).

Chữ ký:

authType?: "ADMIN" | "USER" | "UNAUTHENTICATED";

EventContext.eventId

Giá trị nhận dạng riêng biệt của sự kiện.

Chữ ký:

eventId: string;

EventContext.eventType

Loại sự kiện.

Các giá trị có thể có là:

  • google.analytics.event.log

  • google.firebase.auth.user.create

  • google.firebase.auth.user.delete

  • google.firebase.database.ref.write

  • google.firebase.database.ref.create

  • google.firebase.database.ref.update

  • google.firebase.database.ref.delete

  • google.firestore.document.write

  • google.firestore.document.create

  • google.firestore.document.update

  • google.firestore.document.delete

  • google.pubsub.topic.publish

  • google.firebase.remoteconfig.update

  • google.storage.object.finalize

  • google.storage.object.archive

  • google.storage.object.delete

  • google.storage.object.metadataUpdate

  • google.testing.testMatrix.complete

Chữ ký:

eventType: string;

EventContext.params

Một đối tượng chứa giá trị của các ký tự đại diện trong tham số path được cung cấp cho phương thức để kích hoạt Cơ sở dữ liệu theo thời gian thực.

Chữ ký:

params: Params;

EventContext.resource

Tài nguyên đã tạo ra sự kiện.

Các giá trị hợp lệ là:

Số liệu phân tích: projects/<projectId>/events/<analyticsEventType>

Cơ sở dữ liệu theo thời gian thực: projects/_/instances/<databaseInstance>/refs/<databasePath>

Dung lượng lưu trữ: projects/_/buckets/<bucketName>/objects/<fileName>#<generation>

Xác thực: projects/<projectId>

Pub/Sub: projects/<projectId>/topics/<topicName>

Vì các thực thể trong Cơ sở dữ liệu theo thời gian thực và bộ chứa trong Cloud Storage là riêng biệt trên toàn hệ thống và không liên quan đến dự án, nên các tài nguyên của các thực thể này đều bắt đầu bằng projects/_. Dấu gạch dưới không phải là tên dự án hợp lệ.

Chữ ký:

resource: Resource;

EventContext.timestamp

Dấu thời gian cho sự kiện dưới dạng chuỗi RFC 3339.

Chữ ký:

timestamp: string;