Как использовать приложение Firebase, проверьте в React. 403 ошибка

# #javascript #reactjs #firebase #firebase-app-check

Вопрос:

Я хочу использовать приложение Firebase для регистрации в проекте Гэтсби.Я завершил регистрацию приложения в консоли Firebase.

введите описание изображения здесь

В моем проекте:

 import { initializeApp } from "firebase/app";
import { initializeAppCheck, ReCaptchaV3Provider, getToken } from "firebase/app-check";

const app = initializeApp({
  // My firebase configuration object
});

const appCheck = initializeAppCheck(app, {
  provider: new ReCaptchaV3Provider('MY_RECAPTCHA_PUBLIC_KEY'),
  isTokenAutoRefreshEnabled: true
});

getToken(appCheck)
  .then(() => {
    console.log('success')
  })
  .catch((error) => {
    console.log(error.message)
  })

 

Но, это не работает и произошла ошибка:

@firebase/app-проверка: Ошибка FirebaseError: Проверка приложения: Сервер выборки вернул состояние ошибки HTTP. Статус HTTP: 403. (AppCheck/fetch-status-ошибка).

Итак, может ли кто-нибудь помочь мне выяснить, в чем проблема? Как это решить?

Спасибо!

Ответ №1:

Перейдите к своему проекту Firebase в облачной консоли Google: https://console.cloud.google.com/apis/credentials

Нажмите на название вашего API-ключа Firebase в разделе «Ключи API».

«Ограничения API»

Если вы ограничиваете использование своего ключа API, убедитесь, что вы включили:

Выбранные API: API проверки приложений Firebase

Ответ №2:

Добавление к ответу @jprio:

Если вы используете неограниченный ключ API и используете ReCaptchaEnterprise, вы должны убедиться, что у вас правильно установлены соответствующие домены для ключа корпоративного сайта Recaptcha.

  1. В облачной консоли Google перейдите в раздел Безопасность, затем повторите действия предприятия: https://console.cloud.google.com/security/recaptcha
  2. Нажмите на три точки и нажмите «Изменить клавишу» на сгенерированном ключе Изменить Ключ Корпоративного Сайта
  3. В разделе Список доменов введите домен вашего веб-сайта, не нужно добавлять префиксы HTTP/HTTPS/WWW или номера портов.
  4. Если вы разрабатываете локально, обязательно добавьте localhost/127.0.0.1. Это то, что решило проблему для меня. Сохранить изменения. НЕ ЗАБУДЬТЕ удалить их перед развертыванием на своем веб-сайте
    введите описание изображения здесь
  5. Нажмите обновить на своем клиенте примерно через 5 минут, чтобы изменения распространились. Убедитесь, что вы используете recaptchaenterprisprovider в своем клиенте, если вы используете reCAPTCHA Enterprise.

Ответ №3:

У меня была похожая проблема. Для меня ошибка была устранена, когда я использовал правильный идентификатор приложения в конфигурации firebase. Оказывается, я настроил два приложения на firebase и загрузил неправильный файл json, у которого был другой идентификатор приложения.

Согласно поддержке firebase, идентификаторы приложений уникальны для каждого приложения.