EventContext interface

Bir etkinliğin gerçekleştiği bağlam.

Bir EventContext şu bilgileri açıklar: - Bir etkinliğin gerçekleştiği zaman. - Etkinliğin benzersiz bir tanımlayıcısı. - Geçerliyse etkinliğin gerçekleştiği kaynak. - Etkinliği tetikleyen isteğin (geçerliyse ve varsa) yetkilendirmesi.

İmza:

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

Özellikler

Özellik Tür Açıklama
kimlik doğrulama { token: nesne; uid: string; } İşlevi tetikleyen kullanıcının kimlik doğrulama bilgileri.
authType "YÖNETİCİ" | "KULLANICI" | "KİMLİK DOĞRULAMADI" Kullanıcının izin düzeyi.
etkinlikId dize Etkinliğin benzersiz tanımlayıcısı.
eventType dize Etkinliğin türü.
params Parametreler Realtime Database tetikleyicisi yöntemine sağlanan path parametresindeki joker karakterlerin değerlerini içeren nesne.
kaynak Kaynak Etkinliği yayınlayan kaynak.
zaman damgası dize RFC 3339 dizesi olarak etkinliğin zaman damgası.

EventContext.auth

İşlevi tetikleyen kullanıcının kimlik doğrulama bilgileri.

Bu nesne, kimliği doğrulanmış kullanıcılar için uid ve token özelliklerini içerir. Jeton anahtarları dahil olmak üzere daha fazla ayrıntı için güvenlik kuralları referansını inceleyin.

Bu alan yalnızca Realtime Database tetikleyicileri ve çağrılabilir işlevleri için doldurulur. Kimliği doğrulanmamış bir kullanıcı için bu alan boştur. Firebase yönetici kullanıcıları ve kullanıcı bilgisi sağlamayan etkinlik türleri için bu alan mevcut değildir.

İmza:

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

EventContext.authType

Kullanıcının izin düzeyi.

Geçerli değerler şunlardır:

  • ADMIN: Geliştirici kullanıcısı veya kullanıcının kimliği bir hizmet hesabı aracılığıyla doğrulandı.

  • USER: Bilinen kullanıcı.

  • UNAUTHENTICATED: Kimliği doğrulanmayan işlem

  • null: Kullanıcı bilgileri sağlamayan etkinlik türleri içindir (Realtime Database hariç tümü).

İmza:

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

EventContext.eventId

Etkinliğin benzersiz tanımlayıcısı.

İmza:

eventId: string;

EtkinlikBağlamı.eventType

Etkinliğin türü.

Olası değerler:

  • 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

İmza:

eventType: string;

EtkinlikBağlamı.params

Realtime Database tetikleyicisi yöntemine sağlanan path parametresindeki joker karakterlerin değerlerini içeren nesne.

İmza:

params: Params;

EtkinlikBağlamı.kaynak

Etkinliği yayınlayan kaynak.

Geçerli değerler şunlardır:

Analiz: projects/<projectId>/events/<analyticsEventType>

Gerçek Zamanlı Veritabanı: projects/_/instances/<databaseInstance>/refs/<databasePath>

Depolama alanı: projects/_/buckets/<bucketName>/objects/<fileName>#<generation>

Kimlik doğrulama: projects/<projectId>

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

Realtime Database örnekleri ve Cloud Storage paketleri küresel olarak benzersiz olduğundan ve projeye bağlı olmadığından kaynakları projects/_ ile başlar. Alt çizgi geçerli bir proje adı değil.

İmza:

resource: Resource;

EventContext.timestamp

RFC 3339 dizesi olarak etkinliğin zaman damgası.

İmza:

timestamp: string;