Это кажется довольно простой проблемой, я думаю, что просто смотрю на это слишком долго.Я пытаюсь запросить историю транзакций в моей базе данных, но я только хочу, чтобы пользователи могли читать документы транзакций, с которыми они связаны.Я знаю, что ограничения запросов должны соответствовать ограничениям правил, и, похоже, мои.Может кто-нибудь найти здесь что-то не так?
Правила Firebase
match /transaction-history/{transactionId}{
allow read: if isPurchaserOrReciever(getTransaction(transactionId));
}
function isPurchaserOrReciever(transaction) {
return transaction.purchaserId == request.auth.uid || transaction.recieverId == request.auth.uid;
}
function getTransaction(transactionId) {
return get(/databases/$(database)/documents/transaction-history/$(transactionId)).data;
}
Запрос к базе данных в моем приложении.
await firestore
.collection('transaction-history')
.where('purchaserId', isEqualTo: myId)
.getDocuments()).documents;