Подтвердить что ты не робот

Не разрешен обратный вызов Facebook

У меня есть приложение для Facebook (игра в режиме разработки), потребляемая веб-клиентом (холст Facebook) и мобильным клиентом (приложение для Android). У меня также есть REST API (разработанный с Laravel), который позволяет обмены между клиентами и API Facebook. API доступен через Интернет (не локальный).

Моя цель - обнаружить, когда пользователи удаляют мое приложение Facebook.

документация на Facebook говорит, что:

Люди могут удалять приложения через Facebook.com без взаимодействия с самим приложением. Чтобы помочь приложениям обнаружить, когда это произошло, мы разрешить им предоставлять URL-адрес обратного вызова с отменой авторизации, который будет пинговаться когда это происходит.

Вы можете активировать обратный вызов deauthorize через панель приложений. Просто иди в ваше приложение, затем выберите меню "Настройки" и, наконец, расширенный Вкладка. Текстовое поле предоставляется для URL-адреса Отклонителя обратного вызова.

Всякий раз, когда пользователь вашего приложения отменяет его полномочия, этот URL-адрес будет отправлен HTTP POST, содержащий подписанный запрос. Ознакомьтесь с нашим руководством по анализу подписанный запрос, чтобы узнать, как его декодировать, чтобы узнать идентификатор пользователя, который вызвал обратный вызов.

Маршрут Laravel для этого URL-адреса принимает запросы GET и POST. Я знаю, что обратный вызов Facebook использует запрос POST, но прием метода GET позволяет мне использовать инструмент Open Graph Object Debugger чтобы проверить, доступен ли мой URL-адрес на серверах Facebook (и это успешно).

В настоящее время я использую самоподписанный сертификат SSL (AES 128). Apache - это мой веб-сервер (он перенаправляет все HTTP-запросы на HTTPS).

Я знаю как декодировать параметр signed_request закодированный POST (проблема здесь отсутствует).

Проблема:

Когда я удаляю приложение (с помощью тестовой учетной записи Facebook) , адрес обратного вызова никогда не называется. Журналы Apache (доступ/ошибка) абсолютно ничего не показывают (пока я вижу предыдущий доступ через Open Graph Object Debugger).

Я попытался изменить URL обратного вызова другим доменом с сертификатом SSL, предоставленным известным ЦС. Тот же результат... это очень расстраивает.

Я не понимаю, почему. Я что-то пропустил?

  • Это проблема с моим веб-сервером?
  • Это проблема с моим SSL-сертификатом?
  • Это проблема с настройкой моего приложения Facebook?
  • Это потому, что мое приложение Facebook находится в режиме разработки?
  • Это ошибка в Facebook?

enter image description here

4b9b3361

Ответ 1

Из моего личного опыта уведомления в facebook не являются надежными. Я разработал несколько приложений, которые полагаются на обновления в реальном времени из facebook, и у меня возникли следующие проблемы:

  • Обновления/обратные вызовы теряются
  • Обновления, отправленные через несколько дней
  • Когда facebook обновляет графическую версию api, некоторые из приложений работают, которые все еще находятся на старой версии, а те, которые вы переносите, не работают.

Иногда, чтобы исправить это, я удалю все подписки и снова их добавлю. Через некоторое время я устал от этого, и теперь я действительно тяну, а обновления в реальном времени также я внедрил протоколирование и мониторинг.

Я надеюсь, что это поможет