EventContext interface

บริบทที่เกิดเหตุการณ์ขึ้น

โดย EventContext จะอธิบายข้อมูลต่อไปนี้ - เวลาที่เหตุการณ์เกิดขึ้น - ตัวระบุที่ไม่ซ้ำกันของกิจกรรม - แหล่งข้อมูลที่เกิดเหตุการณ์ หากมี - การให้สิทธิ์คำขอที่ทริกเกอร์เหตุการณ์ (หากมี)

ลายเซ็น:

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

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ ประเภท คำอธิบาย
การตรวจสอบสิทธิ์ {Token: object; uid: string; } ข้อมูลการตรวจสอบสิทธิ์ของผู้ใช้ที่ทริกเกอร์ฟังก์ชัน
authType "ผู้ดูแลระบบ" | "USER" | "ยังไม่ได้ตรวจสอบสิทธิ์" ระดับสิทธิ์สำหรับผู้ใช้
รหัสเหตุการณ์ สตริง ตัวระบุที่ไม่ซ้ำกันของกิจกรรม
eventType สตริง ประเภทเหตุการณ์
พารามิเตอร์ พารามิเตอร์ ออบเจ็กต์ที่มีค่าของไวลด์การ์ดในพารามิเตอร์ path ที่ระบุให้กับเมธอดสำหรับทริกเกอร์ Realtime Database
ทรัพยากร แหล่งข้อมูล ทรัพยากรที่ปล่อยเหตุการณ์
การประทับเวลา สตริง การประทับเวลาของเหตุการณ์เป็นสตริง RFC 3339

EventContext.auth

ข้อมูลการตรวจสอบสิทธิ์ของผู้ใช้ที่ทริกเกอร์ฟังก์ชัน

ออบเจ็กต์นี้มีพร็อพเพอร์ตี้ uid และ token สำหรับผู้ใช้ที่ตรวจสอบสิทธิ์แล้ว โปรดดูรายละเอียดเพิ่มเติมเกี่ยวกับคีย์โทเค็นที่ข้อมูลอ้างอิงกฎความปลอดภัย

ช่องนี้จะป้อนข้อมูลสําหรับทริกเกอร์ Realtime Database และฟังก์ชันที่เรียกใช้ได้เท่านั้น สำหรับผู้ใช้ที่ไม่ได้ตรวจสอบสิทธิ์ ฟิลด์นี้จะเป็นค่าว่าง ไม่มีช่องนี้สำหรับผู้ใช้ที่ดูแลระบบ Firebase และประเภทเหตุการณ์ที่ไม่ได้ให้ข้อมูลผู้ใช้

ลายเซ็น:

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

EventContext.authType

ระดับสิทธิ์สำหรับผู้ใช้

ค่าที่ใช้ได้มีดังนี้

  • ADMIN: ผู้ใช้ของนักพัฒนาแอปหรือผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์ผ่านบัญชีบริการ

  • USER: ผู้ใช้ที่รู้จัก

  • UNAUTHENTICATED: การดำเนินการที่ไม่ได้ตรวจสอบสิทธิ์

  • null: สำหรับประเภทเหตุการณ์ที่ไม่ได้ให้ข้อมูลผู้ใช้ (ทั้งหมดยกเว้น Realtime Database)

ลายเซ็น:

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

EventContext.eventId

ตัวระบุที่ไม่ซ้ำกันของกิจกรรม

ลายเซ็น:

eventId: string;

EventContext.eventType

ประเภทเหตุการณ์

โดยค่าที่เป็นไปได้มีดังนี้

  • 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

ลายเซ็น:

eventType: string;

EventContext.params

ออบเจ็กต์ที่มีค่าของไวลด์การ์ดในพารามิเตอร์ path ที่ระบุให้กับเมธอดสำหรับทริกเกอร์ Realtime Database

ลายเซ็น:

params: Params;

EventContext.resource

ทรัพยากรที่ปล่อยเหตุการณ์

ค่าที่ใช้ได้มีดังนี้

ข้อมูลวิเคราะห์: projects/<projectId>/events/<analyticsEventType>

ฐานข้อมูลเรียลไทม์: projects/_/instances/<databaseInstance>/refs/<databasePath>

พื้นที่เก็บข้อมูล: projects/_/buckets/<bucketName>/objects/<fileName>#<generation>

การตรวจสอบสิทธิ์: projects/<projectId>

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

เนื่องจากอินสแตนซ์ Realtime Database และที่เก็บข้อมูล Cloud Storage จะไม่ซ้ำกันทั่วโลกและไม่เชื่อมโยงกับโปรเจ็กต์ ทรัพยากรจึงเริ่มต้นด้วย projects/_ ขีดล่างไม่ใช่ชื่อโปรเจ็กต์ที่ถูกต้อง

ลายเซ็น:

resource: Resource;

EventContext.timestamp

การประทับเวลาของเหตุการณ์เป็นสตริง RFC 3339

ลายเซ็น:

timestamp: string;