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 uid
và token
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ựcnull
: Đố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;