簡體   English   中英

Firebase 文檔上傳失敗並出現存儲異常,但規則和登錄工作

[英]Firebase document upload failing with Storage Exception, but rules and logging in works

在這個社區提供了一些驚人的幫助后,讓我的客戶的應用程序正常工作並找到了在哪里進行 UI 編輯,我陷入了僵局。 自從我的客戶刪除了應用程序上的最后一個承包商后,這個問題就出現了,而且您似乎無法再通過我們的應用程序將任何內容上傳到 firebase 服務器。 感謝這個社區,我的應用程序通過我所做的視覺更改正確構建,我仍然可以在我的虛擬設備和手機上的實際 apk 上登錄。 我所有擁有測試應用程序的客戶仍然可以登錄他們的帳戶。 我對移動應用程序開發的世界越來越了解,我嘗試探索其他用戶的一些解決方案,包括 Cloud Firestore 的特定規則,並檢查firebase_options.dart文件是否正確配置了應用程序 hash 密鑰和標識符在 firebase 項目設置門戶上找到。 我的應用程序也有權訪問我的本地存儲,我看到一些解決方案提到了這一點。 請原諒我的錯誤日志轉儲,但這似乎是每次單擊我的上傳按鈕時都會引發的大量錯誤。


09-05 23:01:34.146 10121 19842 22377 E StorageException: StorageException has occurred.
09-05 23:01:34.146 10121 19842 22377 E StorageException: User does not have permission to access this object.
09-05 23:01:34.146 10121 19842 22377 E StorageException:  Code: -13021 HttpResult: 403
09-05 23:01:34.151 10121 19842 22377 E StorageException: The server has terminated the upload session
09-05 23:01:34.151 10121 19842 22377 E StorageException: java.io.IOException: The server has terminated the upload session
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at com.google.firebase.storage.UploadTask.serverStateValid(UploadTask.java:339)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at com.google.firebase.storage.UploadTask.shouldContinue(UploadTask.java:308)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at com.google.firebase.storage.UploadTask.run(UploadTask.java:229)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at com.google.firebase.storage.StorageTask.lambda$getRunnable$7$com-google-firebase-storage-StorageTask(StorageTask.java:1072)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at com.google.firebase.storage.StorageTask$$ExternalSyntheticLambda3.run(Unknown Source:2)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at java.lang.Thread.run(Thread.java:923)
09-05 23:01:34.151 10121 19842 22377 E StorageException: Caused by: java.io.IOException: {  "error": {    "code": 403,    "message": "Permission denied."  }}
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at com.google.firebase.storage.network.NetworkRequest.parseResponse(NetworkRequest.java:445)
09-05 23:01:34.151 10121 19842 22377 E StorageException:    at com.google.firebase.storage.network.NetworkRequest.parseErrorResponse(NetworkRequest.java:462)

我將繼續自己調查此錯誤,並將報告任何發現。

我是這些移動開發 SDK 和設置的新手,所以我確定我在某處遺漏了一些愚蠢的東西。 我也標記了 Gradle 和 Flutter,因為老實說,我不確定它是否包含在其中一個構建文件中的 firebase 配置設置。

干杯。

事實證明我找到了正確的解決方案,但將其置於錯誤的服務器規則中。 Firestore 和 Cloud Storage 是不同的產品,具有不同的規則。

因此,感謝 Dharmaraj 向我指出這一點。 我的 Firebase 門戶網站的存儲菜單隱藏在所有產品部分中。 新手犯了我的錯誤,但我很高興現在可以正常工作了!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM