Я видел баннер на meta.discourse.org, где сообщалось, что мой вход через Facebook будет удалён, и рекомендовалось переключиться на Discourse ID. Поэтому я перешёл по ссылке на Discourse ID и попытался войти через Facebook, но это не сработало.
Похоже, что ваши настройки Facebook указаны неверно. Поскольку вход через Facebook пока не работает, я думаю, вам стоит продлить срок до 30 ноября.
Вход через Facebook в настоящее время недоступен для этого приложения, так как мы обновляем дополнительные сведения о нём. Пожалуйста, попробуйте позже.
Спасибо за отчет, Дэн. Я смог войти, используя свою учетную запись Facebook, но вижу, что процессы проверки приложения изменились: теперь нужно предоставить подробности о том, как мы используем ИИ от Facebook. Это уже сделано, и мы ждем проверки. Наше приложение Facebook не выполняет ничего особенного — оно лишь позволяет вход через Facebook, но тем не менее Meta (Facebook) должна провести проверку. Надеюсь, они сделают это скоро.
Мы изучим возможность продления срока по этому вопросу здесь, в Meta, в зависимости от того, как быстро пройдет проверка.
Распространённая проблема при использовании входа через Facebook заключается в том, что он работает для пользователей, указанных в настройках администратора Facebook как «разработчики» приложения, но не работает для широкой публики.
Я полагаю, что вы сможете воспроизвести эту проблему, следуя руководству Facebook по тестированию входа через Facebook.
Хорошее предложение, спасибо. Я только что сделал это и вошёл под временным аккаунтом (который не является администратором или разработчиком приложения). Увидел этот экран:
Теперь появится запрос на ввод имени и адреса электронной почты или, если вы уже входили в систему через Facebook, сообщение: «Ранее вы входили в Discourse Login (Discourse ID) через Facebook. Хотите продолжить?»
Спасибо, я могу воспроизвести проблему при определённых условиях. Мне кажется, я понял, что происходит.
Когда пользователь начинает аутентификацию через Meta, мы сохраняем значение destination_url для экземпляра ID, чтобы после завершения аутентификации пользователя можно было вернуть туда, откуда он начал. Однако, если аутентификация не завершается в течение короткого времени (она не удаётся или пользователь прерывает процесс), это значение destination_url не очищается и остаётся в сессии браузера пользователя. При следующей попытке входа ID пытается перенаправить пользователя по этому URL, но поскольку в нём содержится старая комбинация кода/состояния из первоначального процесса аутентификации, перенаправление приводит к ошибке «Извините, время ожидания авторизации истекло».
Перенаправление не должно происходить вовсе после истечения короткого промежутка времени. Нам необходимо убедиться, что значение destination_url очищается через 10 минут. Я полагаю, что комбинация кода/состояния для аутентификации действительна только в течение 10 минут, но это нужно перепроверить.
Это должно быть исправлено с сегодняшнего утра. У нас была ошибка, из-за которой пользователи могли столкнуться с этой ошибкой из-за куки с устаревшим значением аутентификации, но мы не очищали эту куку, поэтому ошибка продолжала появляться.
Теперь, если вы столкнетесь с этой ошибкой, вы увидите её один раз, но кука, вызвавшая её, будет очищена, и при следующем входе в систему вы больше не увидите её.