Я создаю поток OAuth в функции Firebase.
Когда клиент пытается войти через Facebook, я создаю UUID для его потока, перенаправляем его в диалоговое окно входа в Facebook в браузере с помощьювыше UUID в качестве значения для параметра состояния.
Я ожидаю, что появится диалог входа в Facebook, вместо этого я получаю эту ошибку:
Ошибка аутентификации: StatusCodeError: 400 - "{\ "error \": {\ "message \": \ "Отсутствует параметр redirect_uri. \", \ "type \": \ "OAuthException \", \ "code \": 191, \ "fbtrace_id \": \ "ASKnZNGGkKhI4UI5mBcX_zl \ "}}"
Я даже пытался добавить цитаты в redirect_uri в моем запросе
...&redirect_uri="<encoded_uri>"
, что привело к другой ошибке:
Невозможно загрузить URL: домен этого URL не включен в домены приложения. Чтобы иметь возможность загрузить этот URL, добавьте все домены и дочерние домены вашего приложения в поле «Домены приложения» в настройках приложения.
(поэтому я предполагаю, что мне не нужно заключать параметрв кавычках)
Это URL, на который я перенаправляю:
https://www.facebook.com/v5.0/dialog/oauth?client_id=[FACEBOOK_CLIENT_ID]&redirect_uri=https%3A%2F%2Fus-central1-bitblock-blast.cloudfunctions.net%2Foauth%2Fsignin%2Ffacebook%2Fcallback%2F&scope=public_profile&state=1da53893-ee5c-488d-be5c-c7913411c758
Это версия с request_uri notпроценты закодированы, чтобы вы могли видеть это ясно (Я НЕ ИСПОЛЬЗУЮ ЭТО)
https://www.facebook.com/v5.0/dialog/oauth?client_id=[FACEBOOK_CLIENT_ID]&redirect_uri=https://us-central1-bitblock-blast.cloudfunctions.net/oauth/signin/facebook/callback/&scope=public_profile&state=1da53893-ee5c-488d-be5c-c7913411c758
Я пытался открыть его прямо в браузере, ноНе повезло, те же ошибки.
Как видите, это моя конечная точка обратного вызова
https://us -central1-bitblock-blast.cloudfunctions.net / oauth /вход / facebook / обратный вызов /
Это домены, которые я добавил в консоль приложения на Facebook в разделе «Настройки»> «Основные»
Этинастройки и обратные вызовы URI, которые я добавил в разделе «Продукты»> «Вход в Facebook»> «Настройки» (как видите, я пробовал все возможные варианты)
Здесь вы видите, что мой обратный вызов проверяется как OK
(Обратите внимание, что все следующие варианты работают: "... callback /", "... callback", "... callback? state = XXX "
Так что я не понимаю, что я пропускаю или делаю неправильно. Я ожидаю, что меня перенаправят в диалоговое окно входа в Facebook, и вместо этого я продолжаю получать ошибку «отсутствует параметр redirect_uri».
РЕДАКТИРОВАТЬ: просто чтобы убедиться, что приложение Facebook также Live.