0

У меня есть приложение для Facebook, которое связано со страницей компании. На этой странице есть публичные сообщения, и я хотел бы получить эти сообщения (и в конечном итоге изображения и т. Д.) Через плагин spring-social-facebook для весенней загрузки.Получить общедоступные сообщения в Facebook с идентификатором приложения и приложением App

Я могу получить объект страницы без аутентификации в качестве конкретного пользователя FB, но как я могу получить общедоступную информацию (например, настенные сообщения, изображения, загруженные и т. Д.), Связанные с компанией?

Page page = facebook.pageOperations().getPage("1234567"); 
    List<Post> posts = facebook.feedOperations().getFeed(); 

    model.addAttribute("page", page); 
    model.addAttribute("posts", posts); 
    return "hello"; 

Я могу получить доступ к page объект ($ {page.category}), но когда я пытаюсь получить свои посты, я получаю следующее исключение:

org.springframework.social.MissingAuthorizationException: Authorization is required for the operation, but the API binding was created without authorization. 

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

Спасибо!

ответ

1

Согласно Page Documentation, чтобы принести posts-

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

Чтобы получить сообщения от публичной страницы без аутентификации пользователя, вы можете использовать доступ к приложения маркера (app_id | app_secret) (истекает никогда).

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

+0

Я пишу приложение весны, которое будет аутентифицироваться против FB и вернуть общедоступные данные. У этого приложения есть токен приложения (сгенерированный из идентификатора приложения и секретности) и должен использовать его для запроса страницы (как вы отметили, в первой строке токена приложения должно быть достаточно, чтобы отбросить данные). Это держит id и секрет от общественности. Однако, с приведенным выше кодом, я все еще вижу исключение, которое я опубликовал. – pherris

+0

Я не получил вас, но вы пробовали это с помощью токена доступа к приложениям? –

+0

Я боюсь, как это сделать, используя плагин spring-social-facebook. – pherris