# #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.
- В облачной консоли Google перейдите в раздел Безопасность, затем повторите действия предприятия: https://console.cloud.google.com/security/recaptcha
- Нажмите на три точки и нажмите «Изменить клавишу» на сгенерированном ключе
- В разделе Список доменов введите домен вашего веб-сайта, не нужно добавлять префиксы HTTP/HTTPS/WWW или номера портов.
- Если вы разрабатываете локально, обязательно добавьте localhost/127.0.0.1. Это то, что решило проблему для меня. Сохранить изменения. НЕ ЗАБУДЬТЕ удалить их перед развертыванием на своем веб-сайте
- Нажмите обновить на своем клиенте примерно через 5 минут, чтобы изменения распространились. Убедитесь, что вы используете recaptchaenterprisprovider в своем клиенте, если вы используете reCAPTCHA Enterprise.
Ответ №3:
У меня была похожая проблема. Для меня ошибка была устранена, когда я использовал правильный идентификатор приложения в конфигурации firebase. Оказывается, я настроил два приложения на firebase и загрузил неправильный файл json, у которого был другой идентификатор приложения.
Согласно поддержке firebase, идентификаторы приложений уникальны для каждого приложения.