Как получить post ID общего URL-адреса Facebook или как получить доступ ко всем сообщениям через приложение Facebook?

#facebook #facebook-graph-api

#Facebook #facebook-graph-api

Вопрос:

Цель

Моя цель состоит в том, чтобы пользователь делился тем, что он создал на моем сайте, с Facebook, а я отображал все комментарии на своей странице с помощью плагина комментариев Facebook.

Итак, мой идеальный поток был бы:

  1. Пользователь создает контент с идентификатором примера vjrjf834fdkfj и делится им, используя общедоступный URL http://example.com/vjrjf834fdkfj/ .
  2. Пользователь делится этим URL-адресом на Facebook через мой идентификатор приложения Facebook. Идентификатор записи — 1234567.
  3. Я получаю этот идентификатор сообщения. (Это то, с чем мне нужна помощь)
  4. Я сохраняю это в своей базе данных.
  5. Всякий раз, когда посетитель посещает страницу http://example.com/vjrjf834fdkfj/ , я ищу в базе данных идентификатор записи (1234567 в этом примере) и вызываю плагин комментариев Facebook, используя этот идентификатор записи.

Что я пробовал

Попытка # 1

Первая неудачная попытка: прочитайте post_id поле FB.ui обратного вызова, но этот ответ обычно пуст, потому что Facebook говорит, что:

Доступно только в том случае, если пользователь вошел в ваше приложение с помощью Facebook и предоставил publish_actions. Если присутствует, это идентификатор опубликованной истории Open Graph.

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

Попытка # 2

Итак, моей следующей попыткой было получить список всех сообщений этого приложения, вызвав Graph API. У меня есть «базовое» приложение с платформой «Веб-сайт», установленной на URL-адрес моего веб-сайта ( www.example.com ). Учитывая этот список, я мог бы отфильтровать его по соответствующему URL-адресу и вуаля, получить идентификатор сообщения для правильного URL-адреса.

Я могу создать токен доступа и вызвать https://graph.facebook.com/v2.8/{app-id}/objects?access_token={token} , но это выдает ошибку The parameter type is required . И когда я пытаюсь получить список типов объектов, вызывая /object_types конечную точку, я получаю пустой список.

Попытка # 3

Я также немного поиграл с созданием вкладки страницы, но документация не имеет для меня никакого смысла относительно того, как это применимо к моему случаю. В итоге у меня получилось две дополнительные страницы, все пустые, а не то, что я хочу. Тем не менее, я мог бы иметь дополнительную страницу на своей странице Facebook, содержащую список всех сообщений, которые были опубликованы (чтобы эти сообщения отображались здесь и на временной шкале моего пользователя).

Вопросы

Итак:

  • Почему этот object_types список пуст? Я ожидаю, что здесь появится что-то вроде «post», что позволит мне получить список всех сообщений, связанных с этим идентификатором приложения.
  • Если это невозможно, как я могу достичь своей конечной цели?

Спасибо.

Комментарии:

1. «Почему этот список object_types пуст?» — потому что он показывает объекты Open Graph, которые вы определили в настройках своего приложения, и не имеет ничего общего с обычными общими ресурсами.

2. Если пользователь не предоставляет вам user_posts или publish_actions, вы не сможете его получить

3. @WizKid Итак, даже если люди делятся через МОЕ приложение и делятся с МОЕЙ страницы, я не могу получить идентификатор записи, если люди не вошли в систему с помощью Facebook или не дали мне разрешение publish_actions / user_posts?