У меня есть приложение FB, которое мой сайт использует для входа в систему FB. Это приложение было опубликовано в течение некоторого времени и отлично работает на производстве. Я создал тестовую программу для моих Девых сред, и это тоже было не работает нормально, до прошлой недели, когда я вдруг начал видеть это сообщение в консоли браузера:Приложение для тестирования Facebook перестало работать, производственное приложение отлично работает (с использованием JS SDK)
Application Error: There was a problem getting data for the application you requested. The application may not be valid, or there may be a temporary glitch. Please try again later.
Это происходит после того, как я называю FB.init()
- вызов FB.getLoginStatus()
вызывает эту ошибку, и обратный вызов, переданный в FB.getLoginStatus()
, никогда не вызывается. Опять же, это происходит только в моей среде разработки, а не в производстве, хотя кнопка XFBML по-прежнему вызывает всплывающее окно.
I copied the basic SDK code from FB's documentation, разместил его на своей собственной странице и все еще имеет эту проблему, поэтому это не то, что на страницах моего сайта мешает.
Я попытался найти SO/Google для ответов, но единственная реальная информация, которую я получаю, - это возвращение в 2011/12/13 и участие приложений FB в режиме разработки; моя не является, это публично. Я попытался создать новое тестовое приложение и изменить идентификатор FB, который использует мой сайт, но я получаю тот же результат.
Единственное изменение в (всех) моих окружений, сделанное недавно, заключается в том, что все они используют SSL по умолчанию. Может ли это быть причиной? И если да, то почему он будет работать в моей производственной среде, но не в моей среде разработки? Любое понимание очень ценится.
EDIT: Использование SDK v2.4, если это имеет значение.
EDIT 2: Это происходит только в том случае, если пользователь не вошел в FB вообще. Если они вошли в систему извне, SDK, похоже, распознает это, и звонок FB.getLoginStatus()
работает нормально.
Спасибо yellowaj! Если это исправит мою проблему завтра, я буду отмечать это как правильный ответ. –