Ad alanı: hata ayıklama

debug

hata ayıklama()

Güvenlik Kuralları dilini yazdıran temel bir hata ayıklama işlevi nesneleri, değişkenleri ve ifade sonuçlarını tarafından değerlendirildiğinden emin olun. debug işlevinin çıktıları şuna yazılır: firestore-debug.log

debug işlevi yalnızca Kurallar'ın içinden çağrılabilir koşulları olarak belirleyin.

debug işlev blokları yalnızca Güvenlik Kuralları motoru tarafından şunun içinde yürütülür: Firebase Emulator Suite'in bir parçası olan Firestore emülatörü. Hata ayıklama işlevinin üretimde hiçbir etkisi yoktur.

Hata ayıklama günlük dosyası girişlerinin başına Kuralları tanımlayan bir dize eklenir günlük çıkışının dil veri türü (örneğin, string_value, map_value) tıklayın.

debug için yapılan çağrılar iç içe yerleştirilebilir.

Şu anda debug özelliği günlük kaydı kavramını desteklememektedir. düzeyler (örneğin, INFO, WARN, ERROR).

// firestore.rules
// Nested debug calls in the following match block....
match /carts/{cartID} {
  allow create: if request.auth != null && request.auth.uid == request.resource.data.ownerUID;
    allow read, update, delete: if
      debug(
        debug(request.auth.uid) == debug(resource.data.ownerUID)
      );
  }
...

// firestore-debug.log
// ...produce logfile output like the following.
string_value: "alice" // for debug(request.auth.uid)

string_value: "alice" // for debug(resource.data.ownerUID)

bool_value: true      // for the outermost enclosing debug() call
...