Klucz interfejsu API to unikalny ciąg znaków, który służy do kierowania żądań do projektu Firebase podczas interakcji z usługami Firebase i Google. Na tej stronie znajdziesz podstawowe informacje o kluczach interfejsu API oraz sprawdzone metody ich używania i zarządzania nimi w przypadku aplikacji Firebase.
Ogólne informacje o kluczach API i Firebase
Klucze API Firebase różnią się od typowych kluczy API
W przeciwieństwie do typowego sposobu używania kluczy interfejsu API klucze interfejsu API usług Firebase nie służą do kontrolowania dostępu do zasobów backendowych. Można to zrobić tylko za pomocą interfejsów Firebase Security Rules (aby kontrolować, którzy użytkownicy mają dostęp do zasobów) i Firebase App Check (aby kontrolować, które aplikacje mają dostęp do zasobów).
Zazwyczaj musisz skrupulatnie chronić klucze interfejsu API (np. za pomocą usługi sejfu lub ustawiając klucze jako zmienne środowiskowe). Klucze interfejsu API dla usług Firebase możesz jednak uwzględnić w kodzie lub w pliku konfiguracyjnym.
Chociaż klucze interfejsu API usług Firebase można bezpiecznie umieszczać w kodzie, należy je sprawdzić i zastosować do nich odpowiednie ograniczenia oraz limity.
Tworzenie kluczy interfejsu API
Projekt Firebase może mieć wiele kluczy interfejsu API, ale każdy klucz może być powiązany tylko z jednym projektem Firebase.
Firebase automatycznie tworzy klucze API dla Twojego projektu, gdy wykonasz jedną z tych czynności:
- Utwórz projekt Firebase >
Browser key
utworzony automatycznie - Utwórz aplikację Apple w Firebase >
iOS key
utworzona automatycznie - Utwórz aplikację Firebase na Androida >
Android key
utworzona automatycznie
Możesz też tworzyć własne klucze API w konsoli Google Cloud, na przykład na potrzeby programowania lub debugowania. Więcej informacji o tym, kiedy może być zalecane później na tej stronie.
Znajdowanie kluczy interfejsu API
Wszystkimi kluczami interfejsu API projektu możesz zarządzać i je wyświetlać w panelu Interfejsy API i usługi > Dane logowania w konsoli Google Cloud.
W tych miejscach możesz też sprawdzić, który klucz interfejsu API jest automatycznie dopasowywany do aplikacji Firebase. Domyślnie wszystkie aplikacje Firebase w Twoim projekcie na tej samej platformie (Apple, Android lub internet) będą używać tego samego klucza interfejsu API.
Aplikacje Apple w Firebase – znajdź klucz interfejsu API dopasowany automatycznie w pliku konfiguracyjnym Firebase
w poluGoogleService-Info.plist API_KEY
.Aplikacje Firebase na Androida – klucz interfejsu API dopasowany automatycznie znajdziesz w pliku konfiguracyjnym Firebase
w polugoogle-services.json current_key
.Aplikacje internetowe Firebase – znajdź klucz API dopasowany automatycznie w obiekcie konfiguracji Firebase w polu
apiKey
.
Używanie klucza API
Klucze API służą do identyfikowania Twojego projektu Firebase podczas interakcji z usługami Firebase/Google. Konkretnie służą do kojarzenia żądań interfejsu API z projektem na potrzeby limitów i rozliczeń. Są one też przydatne do uzyskiwania dostępu do danych publicznych.
Możesz na przykład jawnie użyć klucza API, przekazując jego wartość jako parametr zapytania do wywołania interfejsu API REST. Ten przykład pokazuje, jak wysłać żądanie do interfejsu API skróconego linka Dynamic Links:
POST https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=API_KEY
Gdy aplikacja wywołuje interfejs Firebase API, który wymaga klucza API przekazanego przez klienta mobilnego lub internetowego, automatycznie wyszukuje klucz API w pliku lub obiekcie konfiguracji Firebase. Możesz jednak udostępnić klucze interfejsu API swojej aplikacji za pomocą innego mechanizmu, np. zmiennych środowiska.
Sprawdź i zastosuj odpowiednie ograniczenia kluczy interfejsu API (zalecane).
Chociaż nie musisz traktować klucza API usług Firebase jako tajemnicy, musisz sprawdzić i zastosować ograniczenia opisane w tej sekcji.
Sprawdź interfejsy API automatycznie dodane do listy dozwolonych dla kluczy interfejsu API Firebase
Gdy Firebase utworzy w Twoim projekcie klucz interfejsu API, automatycznie dodamy do niego ograniczenia interfejsu API. Interfejsy API dodane do tej listy dozwolonych to interfejsy API związane z Firebase, które wymagają, aby klient podał klucz interfejsu API wraz z wywołaniem. Pamiętaj, że większość interfejsów API wymaganych do korzystania z usług Firebase nie musi znajdować się na liście dozwolonych kluczy API.
Firebase dodaje niezbędne interfejsy API do wszystkich usług Firebase, więc lista dozwolonych interfejsów API dla klucza API może zawierać interfejsy API usług, których nie używasz. Interfejsy API możesz usuwać z listy dozwolonych, ale musisz uważać, aby nie usunąć interfejsów API wymaganych przez Firebase i usługi Firebase, z których korzystasz (patrz lista interfejsów API związanych z Firebase, które muszą znajdować się na liście dozwolonych dla każdej usługi lub produktu). W przeciwnym razie podczas wywoływania usług Firebase będą występować błędy.
.Zaostrzenie limitu, jeśli używasz Authentication na podstawie hasła
Jeśli używasz Firebase Authentication na podstawie hasła, a ktoś uzyska dostęp do Twojego klucza API, nie będzie mógł uzyskać dostępu do bazy danych projektu Firebase ani do danych Cloud Storage dopóty, dopóki te dane są chronione przez Firebase Security Rules. Mogą jednak używać Twojego klucza API, aby uzyskiwać dostęp do punktów końcowych uwierzytelniania Firebase i wysyłać żądania uwierzytelniania do Twojego projektu.
Aby zmniejszyć ryzyko, że ktoś niewłaściwie użyje klucza API do przeprowadzenia ataku siłowego, możesz zawęzić domyślny limit punktów końcowych identitytoolkit.googleapis.com
, aby odzwierciedlać normalne oczekiwania dotyczące ruchu w aplikacji. Pamiętaj, że jeśli zawęzisz ten limit, a Twoja aplikacja nagle zyska nowych użytkowników, możesz zacząć otrzymywać błędy logowania, dopóki nie zwiększysz limitu.
Limity interfejsu API projektu możesz zmienić w konsoli Google Cloud.
Używaj oddzielnych, ograniczonych kluczy interfejsu API w przypadku usług spoza Firebase
Chociaż kluczy interfejsu API używanych w usługach Firebase nie trzeba traktować jako informacji poufnych, należy zachować szczególną ostrożność w przypadku kluczy interfejsu API używanych w innych interfejsach API Google Cloud.
Jeśli używasz interfejsu API Google Cloud (na dowolnej platformie), który nie jest przeznaczony do usługi lub produktu Firebase, zdecydowanie zalecamy utworzenie oddzielnych, ograniczonych kluczy interfejsu API do korzystania z tych interfejsów. Jest to szczególnie ważne, jeśli interfejs API służy do obsługi płatnej usługi Google Cloud.
Jeśli na przykład używasz interfejsów API Firebase ML i Cloud Vision na iOS, utwórz osobne klucze API, których będziesz używać tylko do uzyskiwania dostępu do interfejsów Cloud Vision.
Dzięki korzystaniu z osobnych, ograniczonych kluczy API w przypadku interfejsów API innych niż Firebase możesz w razie potrzeby zastąpić klucze lub je zamienić i dodać do nich dodatkowe ograniczenia bez zakłócania korzystania z usług Firebase.
Zobacz instrukcje tworzenia kluczy dla poszczególnych interfejsów API
Te instrukcje opisują, jak utworzyć oddzielny klucz API z ograniczeniami dla fikcyjnego interfejsu API o nazwie Super Service API
.
Krok 1. Skonfiguruj istniejące klucze interfejsu API, aby zablokować dostęp do Super Service API
Otwórz stronę Dane logowania w konsoli Google Cloud. Gdy pojawi się taka prośba, wybierz projekt.
W przypadku każdego klucza API na liście otwórz widok edycji.
W sekcji Ograniczenia interfejsów API wybierz Ogranicz klucz, a potem dodaj do listy wszystkie interfejsy API, do których klucz interfejsu API ma mieć dostęp. Upewnij się, że nie uwzględniasz interfejsu API, dla którego tworzysz osobny klucz API (w tym przykładzie
Super Service API
).Gdy konfigurujesz ograniczenia interfejsu API dotyczące klucza interfejsu API, wyraźnie deklarujesz, do których interfejsów API ma on dostęp. Domyślnie, gdy w sekcji Ograniczenia interfejsów API wybrana jest opcja Nie ograniczaj klucza, klucz interfejsu API może służyć do uzyskiwania dostępu do dowolnego interfejsu API włączonego w projekcie.
Dotychczasowe klucze interfejsu API nie będą już przyznawać dostępu do interfejsu Super Service API
, ale każdy z nich będzie nadal działać z interfejsami API dodanymi do listy ograniczeń interfejsu API.
Krok 2. Utwórz nowy klucz interfejsu API i użyj go do uzyskania dostępu do usługi Super Service API
Wróć na stronę Dane logowania. Upewnij się, że nadal jest wybrany Twój projekt Firebase.
Kliknij Utwórz dane logowania > Klucz interfejsu API. Zanotuj nowy klucz interfejsu API, a potem kliknij Ogranicz klucz.
W sekcji Ograniczenia interfejsów API wybierz Ogranicz klucz, a potem dodaj do listy tylko
Super Service API
.Ten nowy klucz API zapewnia dostęp tylko do
Super Service API
.Skonfiguruj aplikację i usługi tak, aby używały nowego klucza interfejsu API.
Używanie kluczy interfejsu API określonych dla środowiska (zalecane)
Jeśli skonfigurujesz różne projekty Firebase na różne środowiska, np. testowe i produkcyjne, ważne jest, aby każde wystąpienie aplikacji współpracowało z odpowiednim projektem Firebase. Na przykład instancja aplikacji na etapie testów nie powinna nigdy komunikować się z produkcyjnym projektem Firebase. Oznacza to też, że Twoja aplikacja testowa musi używać kluczy API powiązanych z testowym projektem Firebase.
Aby uniknąć problemów z przekazywaniem zmian kodu z wersji rozwojowej do wersji testowej, a potem do wersji produkcyjnej, zamiast umieszczać klucze interfejsu API w samym kodzie, ustaw je jako zmienne środowiskowe lub dodaj je do pliku konfiguracyjnego.
Pamiętaj, że jeśli używasz interfejsu Firebase Local Emulator Suite do celów programistycznych, a także interfejsu Firebase ML, musisz utworzyć klucz interfejsu API przeznaczony tylko do debugowania i z niego korzystać. Instrukcje tworzenia tego typu klucza znajdziesz w dokumentacji Firebase ML.
Najczęstsze pytania i rozwiązywanie problemów
Najczęstsze pytania
Czy klucze interfejsu API usług Firebase są domyślnie ograniczone?
Tak. Domyślnie wszystkie klucze interfejsu API, które Firebase automatycznie udostępnia do użycia z interfejsami API powiązanymi z Firebase, mają automatycznie zastosowane ograniczenia API. Zobacz listę interfejsów API związanych z Firebase, które znajdują się na tej liście dozwolonych.
Interfejsy API dodane do tej listy dozwolonych to te, które są wywoływane przez usługi Firebase z kodu klienta i wymagają kluczy API do identyfikacji projektu lub aplikacji Firebase. Pamiętaj, że większość interfejsów API wymaganych do korzystania z usług Firebase nie musi być dodanych do listy dozwolonych dla kluczy API.
Firebase dodaje niezbędne interfejsy API do wszystkich usług Firebase, więc lista dozwolonych interfejsów API dla klucza API może zawierać interfejsy API usług, których nie używasz. Możesz usunąć interfejsy API z listy dozwolonych, ale musisz bardzo uważać, aby nie usunąć interfejsów API wymaganych przez Firebase i usługi Firebase, z których korzystasz (patrz lista interfejsów API związanych z Firebase, które muszą znajdować się na liście dozwolonych dla każdej usługi / produktu). W przeciwnym razie podczas wywoływania usług Firebase będą występować błędy.
Wszystkie klucze interfejsu API wraz z ich „ograniczeniami” możesz wyświetlić w panelu Interfejsy API i usługi > Dane logowania w konsoli Google Cloud.
Pamiętaj o tych kwestiach związanych z zastosowaniem przez Firebase tych „ograniczeń interfejsu API”:
Od maja 2024 r. wszystkie nowe klucze API automatycznie udostępniane przez Firebase są automatycznie ograniczone do listy interfejsów API związanych z Firebase.
W maju 2024 r. wszystkie istniejące oraz nieograniczone klucze API, które zostały wcześniej automatycznie udostępnione przez Firebase, zostaną ograniczone do listy interfejsów API związanych z Firebase oraz wszystkich interfejsów API, które są obecnie włączone w projekcie.
Wszystkie istniejące oraz ograniczone klucze interfejsu API, które Firebase wcześniej automatycznie skonfigurowało, nie uległy zmianie.
Wszystkie istniejące klucze interfejsu API, które nie zostały automatycznie udostępnione przez Firebase, nie uległy zmianie.
Jak mogę sprawdzić, który klucz interfejsu API jest powiązany z moją aplikacją Firebase?
Aby określić, który klucz interfejsu API jest powiązany z Twoją aplikacją Firebase, możesz użyć dowolnej z tych opcji:
Kliknij Ustawienia projektu, a następnie przewiń w dół do karty Twoje aplikacje.
,Wybierz interesującą Cię aplikację.
Pobierz plik lub obiekt konfiguracji Firebase dla interesującej Cię aplikacji, a potem znajdź jej klucz interfejsu API:
Apple: pobierz
GoogleService-Info.plist
i znajdź poleAPI_KEY
Android: pobierz plik
google-services.json
, znajdź konfigurację interesującej Cię aplikacji (szukaj nazwy pakietu), a następnie znajdź polecurrent_key
.Internet: wybierz opcję Konfiguracja i znajdź pole
apiKey
.
Uzyskaj plik lub obiekt konfiguracji Firebase dla wybranej aplikacji, uruchamiając to polecenie:
firebase apps:sdkconfig
PLATFORM FIREBASE_APP_ID - PLATFORM (jeden z tych):
IOS
|ANDROID
|WEB
- FIREBASE_APP_ID: przypisany przez Firebase niepowtarzalny identyfikator Twojej aplikacji Firebase (znajdź identyfikator aplikacji).
- PLATFORM (jeden z tych):
W wydrukowanej konfiguracji Firebase aplikacji znajdź klucz interfejsu API:
Apple: znajdź pole
API_KEY
Android: znajdź konfigurację interesującej Cię aplikacji (szukaj nazwy pakietu), a następnie znajdź pole
current_key
.W internecie: znajdź pole
apiKey
Uzyskaj wartość
apiKeyId
(identyfikator UID) klucza interfejsu API, wywołując odpowiedni punkt końcowy dla interesującej Cię aplikacji, a potem przekazując wartośćapiKeyId
do następnego kroku.- Apple: zadzwoń pod numer
projects.iosApps.get
- Android: wywołaj
projects.androidApps.get
. - Sieć: wywołanie
projects.webApps.get
- Apple: zadzwoń pod numer
Aby uzyskać ciąg znaków klucza interfejsu API, wywołaj funkcję
projects.locations.keys.getKeyString
.Wartość
keyString
jest taka sama jak w pliku konfiguracyjnym aplikacji (Apple | Android | sieć).
Czy w pliku lub obiekcie konfiguracji Firebase mogę mieć 2 klucze API dla tej samej aplikacji Firebase?
Aplikacje Firebase na urządzenia Apple – każda aplikacja ma własny plik konfiguracji i może zawierać tylko 1 klucz interfejsu API.
Aplikacje Firebase na Androida – wszystkie aplikacje na Androida w projekcie Firebase są wymienione w tym samym pliku konfiguracyjnym, a każda z nich może mieć tylko 1 klucz API. Każda aplikacja w tym pliku konfiguracyjnym może mieć jednak inny klucz.
Aplikacje internetowe Firebase – każda aplikacja ma własny obiekt konfiguracji i może mieć tylko jeden klucz interfejsu API.
W jednej aplikacji możesz jednak używać wielu kluczy interfejsu API. Musisz zapewnić aplikacji mechanizm dostępu do tych innych kluczy API, np. za pomocą zmiennej środowiska. Mechanizm dostępu do innych kluczy interfejsu API nie może zależeć od tych kluczy API wymienionych w pliku konfiguracyjnym lub obiekcie Firebase.
Jak Firebase wie, który klucz interfejsu API pasuje do aplikacji (np. w pliku lub obiekcie konfiguracji Firebase)?
Gdy po raz pierwszy pobierasz plik lub obiekt konfiguracji Firebase aplikacji, Firebase sprawdza, czy w Twoim projekcie istnieją klucze API, które mają ograniczenia aplikacji pasujące do aplikacji (np. identyfikator pakietu pasujący do aplikacji Apple).
Jeśli Firebase nie znajdzie żadnych pasujących kluczy z ograniczeniami, w pliku konfiguracyjnym lub obiekcie skonfiguruje wartości iOS key
dla aplikacji Apple, Android key
dla aplikacji na Androida i Browser key
dla aplikacji internetowych (zakładając, że te klucze istnieją i nie mają „ograniczeń aplikacji”, które uniemożliwiają ich dopasowanie do tej aplikacji).
Czy mogę ręcznie usunąć klucz interfejsu API i pole z pliku lub obiektu konfiguracji Firebase?
Tak, możesz ręcznie usunąć klucz API z pliku lub obiektu konfiguracji. Musisz jednak zastosować inny mechanizm, który umożliwi aplikacji dostęp do klucza API (np. za pomocą zmiennej środowiskowej). W przeciwnym razie wszystkie wywołania usług Firebase zakończą się niepowodzeniem.
Czy mogę ręcznie edytować plik lub obiekt konfiguracji Firebase za pomocą różnych kluczy interfejsu API?
Tak. Możesz ręcznie edytować plik lub obiekt konfiguracji, aby powiązać inny klucz API z aplikacją.
Pamiętaj, że jeśli po raz kolejny pobierzesz plik konfiguracji lub obiekt konfiguracji aplikacji z konsoli, zawsze będzie on zawierać listę kluczy interfejsu API, które Firebase automatycznie dopasowuje do tej aplikacji. W takim przypadku trzeba będzie powtórzyć ręczne zmiany.
Czy mogę przenieść klucz interfejsu API z jednego projektu Firebase do innego?
Nie. Klucz interfejsu API identyfikuje tylko konkretny projekt i nie można go przenieść do innego projektu.
Co się stanie, jeśli usunę klucz interfejsu API podany w konsoli Google Cloud?
Jeśli usuniesz klucz interfejsu API używany przez aplikację, wywołania interfejsu API z tej aplikacji przestaną działać. Możesz otrzymywać raporty, e-maile lub błędy, które wskazują, że próbujesz użyć nieprawidłowego klucza API.
Usunięcie klucza API jest trwałe i nie można go cofnąć.
Które interfejsy API są wymagane na liście dozwolonych interfejsów API w sekcji „Ograniczenia klucza interfejsu API” dla klucza interfejsu API Firebase?
W przypadku klucza interfejsu API Firebase na liście dozwolonych interfejsów API w sekcji „Ograniczenia interfejsu API” powinny znajdować się tylko te interfejsy API, które wymagają, aby klient przesłał klucz API wraz z wywołaniem. Pamiętaj, że ta funkcja jest wymagana w przypadku bardzo niewielu interfejsów API związanych z Firebase. Większość interfejsów API związanych z Firebase włączonych w Twoim projekcie nie musi znajdować się na liście dozwolonych „ograniczeń interfejsu API” klucza.
Z pomocą poniższej tabeli możesz określić, które interfejsy API związane z Firebase należy uwzględnić na liście dozwolonych w ramach „ograniczeń interfejsu API” dla klucza interfejsu API Firebase. Pamiętaj, że kluczy API Firebase należy używać tylko w przypadku usług Firebase. Dowiedz się więcej o tworzeniu oddzielnych, ograniczonych kluczy interfejsu API na potrzeby konkretnych typów interfejsów API.
Klucze API projektu możesz wyświetlać i nimi zarządzać w panelu Interfejsy API i usługi > Dane logowania w konsoli Google Cloud.
Nazwa interfejsu API (nazwa usługi) | Wyświetlana nazwa interfejsu API | Powiązana usługa lub usługa Firebase |
---|---|---|
firebase.googleapis.com | Firebase Management API | wszystkie produkty |
logging.googleapis.com | Cloud Logging API | wszystkie produkty |
firebaseinstallations.googleapis.com | Interfejs Firebase Installations API | Cloud Messaging, Crashlytics, In-App Messaging, Performance Monitoring, Remote Config, Firebase ML |
firebaseappcheck.googleapis.com | Firebase App Check API | App Check |
firebaseappdistribution.googleapis.com | Firebase App Distribution API | App Distribution |
firebaseapptesters.googleapis.com | Firebase App Testers API | App Distribution |
identitytoolkit.googleapis.com | Identity Toolkit API | Authentication |
securetoken.googleapis.com | Token Service API | Authentication |
firebaserules.googleapis.com * | Firebase Rules API | Cloud Firestore, Cloud Storage, Realtime Database |
datastore.googleapis.com | Cloud Datastore API | Cloud Firestore |
firestore.googleapis.com | Google Cloud Firestore API | Cloud Firestore |
fcmregistrations.googleapis.com | Interfejs FCM Registration API | Cloud Messaging |
firebasestorage.googleapis.com | Cloud Storage dla interfejsu Firebase API | Cloud Storage |
firebasedynamiclinks.googleapis.com | Interfejs API Linków dynamicznych Firebase | Dynamic Links |
firebasehosting.googleapis.com * | Firebase Hosting API | Hosting |
firebaseinappmessaging.googleapis.com | Interfejs API Firebase Wysyłanie wiadomości w aplikacji | In-App Messaging |
firebaseml.googleapis.com | Firebase ML API | Firebase ML |
mlkit.googleapis.com ** | ML Kit API | Firebase ML |
mobilecrashreporting.googleapis.com | Mobile Crash Reporting API | Performance Monitoring |
play.googleapis.com | Google Play Android Developer API | Performance Monitoring |
firebaseremoteconfig.googleapis.com | Zdalne konfigurowanie interfejsu API Firebase | Performance Monitoring, Remote Config |
firebaseremoteconfigrealtime.googleapis.com | Interfejs Firebase Remote Config Realtime API | Performance Monitoring, Remote Config |
cloudconfig.googleapis.com ** | Nie dotyczy | Remote Config |
firebasedatabase.googleapis.com * | Interfejs Firebase Realtime Database API | Realtime Database |
firebasevertexai.googleapis.com | Vertex AI w Firebase API | Vertex AI in Firebase |
* Wymagane tylko wtedy, gdy używasz klucza API Firebase z narzędziami innych firm lub bezpośredniego dostępu REST do usługi lub produktu Firebase.
** Wymagany w przypadku starszych wersji pakietu SDK produktu. Jeśli używasz najnowszej wersji pakietu SDK, interfejs API nie musi znajdować się na liście dozwolonych kluczy.
Rozwiązywanie problemów
Jak naprawić błąd API_KEY_SERVICE_BLOCKED
lub błąd 403 „Forbidden”, który informuje, że żądania do tego interfejsu API są zablokowane?
Jeśli widzisz błąd API_KEY_SERVICE_BLOCKED
lub błąd podobny do tego:
Forbidden: 403 POST https://example-service.googleapis.com/method: Requests to this API example-service.googleapis.com method google.example-service.rest.method are blocked.
Klucz interfejsu API używany przez aplikację do wywoływania interfejsu API prawdopodobnie ma zastosowane ograniczenia interfejsu API, a lista dozwolonych kluczy nie zawiera tego interfejsu API.
Jeśli ten błąd pojawia się podczas próby korzystania z usługi lub produktu związanego z Firebase, sprawdź, czy klucz interfejsu API, którego używasz, ma wszystkie wymagane interfejsy API uwzględnione na liście dozwolonych „Ograniczenia interfejsu API” klucza.
Jeśli ten błąd pojawia się podczas próby korzystania z usługi innej niż Firebase, zdecydowanie zalecamy utworzenie nowego klucza interfejsu API specjalnie dla tej usługi i interfejsu API. Kluczy API Firebase należy używać tylko do usług lub produktów Firebase. Dowiedz się więcej o tworzeniu oddzielnych, ograniczonych kluczy API dla określonych typów interfejsów API.
Jak naprawić ten błąd? „Nie udało się pobrać z serwera identyfikatora pomiarowego tej aplikacji Firebase”.
Klucz API używany przez Twoją aplikację internetową prawdopodobnie ma zastosowane ograniczenia API. W takim przypadku sprawdź, czy interfejs Firebase Management API znajduje się na liście dozwolonych interfejsów API.
Otrzymałem(-am) e-maila lub komunikat o błędzie informujący, że mój klucz interfejsu API jest nieprawidłowy. Co się stało i jak rozwiązać ten problem?
Oto kilka najczęstszych przyczyn nieprawidłowych kluczy API:
Klucz interfejsu API ma zastosowane ograniczenia klucza interfejsu API, które uniemożliwiają jego dopasowanie do aplikacji próbującej użyć tego klucza („ograniczenia aplikacji”) lub uniemożliwiają jego użycie w przypadku wywoływanego interfejsu API („ograniczenia klucza interfejsu API”).
Klucz interfejsu API został usunięty z projektu w konsoli Google Cloud.
Nie utworzono klucza interfejsu API dla identyfikatora projektu podanego w pliku konfiguracji Firebase lub obiekcie.
Jednym ze sposobów rozwiązania tego problemu jest uzyskanie zaktualizowanej wersji pliku konfiguracji Firebase (obiektu konfiguracji), a następnie zastąpienie starego pliku konfiguracji nowym, zaktualizowanym plikiem. Przed wysłaniem pliku konfiguracji do pobrania lub wyświetleniem obiektu konfiguracji w konsoli Firebase sprawdza, czy wymienione klucze API pasują do aplikacji.