[英]Firebase Database connection was forcefully killed by the server: Different region #flutter
[英]Firebase Realtime Database connection killed: Different Region
我正在嘗試構建一個使用 Firebases 實時數據庫的簡單登錄用戶身份驗證 Android 應用程序,但出現錯誤:
[Firebase 數據庫連接被服務器強行終止。 不會嘗試重新連接。 原因:數據庫位於不同的區域。 請將您的數據庫 URL 更改為 https://vax-in-60807-default-rtdb.asia-southeast1.firebasedatabase.app]
我住在菲律賓,目前正在使用新加坡(asia-southeast1)服務器。 這是錯誤的嗎? 或者我應該使用美國的嗎? 如何更改我的數據庫 URL?
您使用的google-services.json
文件似乎不包含實時數據庫 URL,可能是因為您在創建數據庫之前下載了它。 在這種情況下,SDK 假定數據庫位於美國(原始區域),並且您會收到一個錯誤,指出存在不匹配。
有兩種可能的解決方案:
google-services.json
,並將其添加到您的 Android 應用中。FirebaseDatabase.getInstance("https://vax-in-60807-default-rtdb.asia-southeast1.firebasedatabase.app")...
兩者都有相同的結果,因此請選擇您認為最簡單的一個。
將 URL 傳遞到getInstance
方法應該可以解決這個問題:
DatabaseReference database = FirebaseDatabase.getInstance(“https://vax-in-60807-default-rtdb.asia-southeast1.firebasedatabase.app”).getReference();
在接受答案后,它仍然無法正常工作(就像我的情況一樣)。 如果是這樣,請嘗試:
並再次運行它。
如果您是關注新firebase 文檔的新 Flutter 用戶,請在終端中運行此命令。 它將自動更新 firebase_options.dart 文件。
flutterfire configure
我遇到了同樣的問題,那是因為當您設置應用程序時,google-service.json 不包含 firebase_url。
這些問題在您手動配置設置時會遇到,您可以使用flutterfire解決所有這些問題,它將為您提供很多幫助,並通過幾個步驟設置您的應用程序。 請參閱文檔firebase
看起來您使用的 google-services.json 文件不包含實時數據庫 URL,可能是因為您在創建數據庫之前下載了它。 在這種情況下,SDK 假定數據庫位於美國(原始區域),並且您會收到錯誤信息,指出不匹配。
您可以通過任何一種方式修復它。
要么
<key>DATABASE_URL</key> <string>https://<app-instance-default-rtdb>.asia-southeast1.firebasedatabase.app</string> '
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.