Socialauth fb токен доступа после входа в систему

Я вошел в Facebook с моего серверного приложения и могу получить информацию о своем профиле, контакты и т. Д.

Однако, как я могу использовать это, чтобы получить маркер доступа, который я мог бы использовать для restfb? Или в socialauth есть способ, которым я могу выполнить FQL или прочитать список событий пользователя?

List<Contact> contactsList = new ArrayList<>();
    SocialAuthManager manager = socialAuthTemplate.getSocialAuthManager();
    AuthProvider provider = manager.getCurrentAuthProvider();

    contactsList = provider.getContactList();

Текущий метод получения списка контактов.

Спасибо

2 ответа

Решение

Может быть, вы можете попробовать использовать Facebook 4j

https://developers.facebook.com/docs/reference/fql/

   String query = "SELECT src_big "
                            + "FROM photo "
                            + "WHERE aid IN "
                            + "(SELECT aid "
                                + "FROM album "
                                + "WHERE name = " + "\"" + albumname + "\" AND owner IN "
                                    + "(SELECT uid "
                                    + "FROM user "
                                    + "WHERE username = " + "\"" + username + "\"))";

// Single FQL
mPhotos = facebook.executeFQL(query);

Вы можете получить токен доступа с помощью AccessGrant Object

String token = provider.getAccessGrant().getKey();

Или, если вы хотите сделать любой вызов REST, то вы можете использовать метод API

public Response api(String url, final String methodType,
            final Map<String, String> params,
            final Map<String, String> headerParams, final String body)
            throws Exception;

Здесь вы можете передать REST URL и другие значения параметров или NULL для этого.

Другие вопросы по тегам