Không gian tên: gỡ lỗi

gỡ lỗi

gỡ lỗi()

Hàm gỡ lỗi cơ bản in các đối tượng, biến và kết quả câu lệnh của ngôn ngữ Quy tắc bảo mật khi chúng đang được công cụ Quy tắc bảo mật đánh giá. Kết quả đầu ra của debug được ghi vào firestore-debug.log.

Chức năng debug chỉ có thể được gọi trong các điều kiện của Quy tắc.

các khối chức năng debug chỉ được thực thi bởi công cụ Quy tắc bảo mật trong trình mô phỏng Firestore, một phần của Bộ mô phỏng Firebase. Chức năng gỡ lỗi không có tác dụng trong sản xuất.

Các mục nhập tệp nhật ký gỡ lỗi được thêm vào trước một chuỗi xác định loại dữ liệu ngôn ngữ Quy tắc của đầu ra nhật ký (ví dụ: string_value , map_value ).

Các lệnh gọi debug có thể được lồng vào nhau.

Hiện tại, tính năng debug không hỗ trợ khái niệm mức ghi nhật ký (ví dụ: 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
...