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 для этого.