У меня есть iframe, где я отображаю некоторую информацию пользователя Facebook. Когда мой сервер генерирует контент для iframe, он проверяет ответы от Facebook, указывающие, что срок действия кода доступа истек, и устанавливает последовательность повторной аутентификации, которая происходит внутри iframe, где он будет наименее заметен для пользователя. Однако, если сервер обнаружит, что пользователь не вошел в систему, он перейдет в новое окно браузера, чтобы провести пользователя через регистрацию.
В последнее время я заметил, что мой iframe имеет тенденцию к пустоте. Похоже, проблема заключается в том, что иногда API-интерфейсы Facebook сообщают об истечении срока действия кода доступа, когда фактически пользователь даже не вошел в систему. Попытка обновить код доступа приводит к тому, что Facebook перенаправляет на страницу входа. Но страница входа в систему снабжена заголовком «X-Frame-Options: DENY», поэтому браузер просто отказывается отображать что-либо в моем iframe. У меня нет никакого контроля над этим процессом, когда я вызываю URL-адрес для обновления кода доступа, и поскольку содержимое в iframe находится в другом домене, страница хостинга даже не может определить, когда возникла такая ситуация.
Кто-нибудь знает решение этой проблемы? В идеале, API-интерфейсы Facebook могли бы точнее сообщать о токенах с истекшим сроком доступа, но в противном случае было бы неплохо, если бы я мог настроить перенаправление страницы входа в новое окно.