我遇到的問題是,當我在應用程式中單擊“保存”時將資料寫入資料庫時??,什么也沒有發生。這是我不斷收到的錯誤訊息:
"2022-04-21 07:58:45.892016 0100 myDiabetes[73926:7110225] 8.10.0 - [Firebase/Firestore][I-FST000001] Write at usersEvents/HLA3HXIKA1OIGfQXju2exrTkGk82 failed: Missing or insufficient permissions."
我一直在嘗試更改規則等,但似乎沒有任何運氣。我已經發布了源代碼。
class LoggingViewController: UIViewController {
var entryviewcontroller:EntryViewController?
@IBOutlet weak var eventTextBox: UITextField!
@IBOutlet weak var datePicker: UIDatePicker!
@IBOutlet weak var notesTextBox: UITextField!
@IBAction func saveEntryButton(_ sender: Any) {
if entryviewcontroller == nil {
entryviewcontroller = EntryViewController()
}
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd/MM/yyyy hh:mm a"
entryviewcontroller?.event = self.eventTextBox.text ;
entryviewcontroller?.message = self.notesTextBox.text
entryviewcontroller?.dateAndTime = dateFormatter.string(from: self.datePicker.date)
let db = Firestore.firestore()
guard let uid = Auth.auth().currentUser?.uid else {
return
}
db.collection("usersEvents").document(uid).setData([
"event" : entryviewcontroller!.event! ,
"dateAndTime" : entryviewcontroller!.dateAndTime!,
"message" : entryviewcontroller!.message!]){
err in
if let err = err {
print("Error writing document: \(err)")
return
} else {
print("Document successfully written!")
}
}
func viewDidLoad() {
super.viewDidLoad()
}
}
}
uj5u.com熱心網友回復:
轉到 Firebase 控制臺

更新您的規則,因為您的 Firestore 不允許在您的規則中提到的 2022-04-21 之后進行讀寫,因此請替換以下行:
allow read, write: if
request.time < timestamp.date(2022, 4, 21);
到:
allow read, write: if request.auth != null;
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/463313.html
