مساحة الاسم: تصحيح

تصحيح

تصحيح ()

وظيفة تصحيح أساسية تقوم بطباعة كائنات لغة قواعد الأمان والمتغيرات ونتائج البيانات أثناء تقييمها بواسطة محرك قواعد الأمان. تتم كتابة مخرجات debug إلى firestore-debug.log.

لا يمكن استدعاء وظيفة debug إلا داخل شروط القواعد.

يتم تنفيذ كتل وظيفة debug فقط بواسطة محرك قواعد الأمان في محاكي Firestore، وهو جزء من Firebase Emulator Suite. وظيفة التصحيح ليس لها أي تأثير في الإنتاج.

يتم إضافة إدخالات ملف سجل التصحيح مسبقًا بسلسلة تحدد نوع بيانات لغة القواعد لمخرجات السجل (على سبيل المثال، string_value ، و map_value ).

يمكن أن تكون متداخلة المكالمات debug .

حاليًا، لا تدعم ميزة debug مفهوم مستويات التسجيل (على سبيل المثال، 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
...