2015-10-14 3 views
0

Так что я использую RestFB Facebook API с JAVA. Я хочу, чтобы получить пользователь нравится, DOB, образование, событие и т.д.Работа с Java + RestFB

Так у меня есть основной класс и в этом классе я звоню ----

_SocialMedia _sm = new _SocialMedia(); 

И в этом классе у меня есть следующий код

import com.restfb.DefaultFacebookClient; 
import com.restfb.FacebookClient; 
import com.restfb.Parameter; 
import com.restfb.types.User; 

public class _SocialMedia_Facebook extends DefaultFacebookClient { 
    __CConfig config = new __CConfig(); 

    public _SocialMedia_Facebook() { 
    AccessToken accessToken = obtainAppAccessToken(String.valueOf(config.getFbAppid()), config.getFbAppsecret()); 
    FacebookClient facebookClient = new DefaultFacebookClient(String.valueOf(accessToken.getAccessToken()), config.getFbAppsecret(), config.getFbApiversion()); 
    User user = facebookClient.fetchObject("me", User.class, Parameter.with("metadata", 1)); 
    System.out.println(user.getFirstName() + " " + user.getLastName()); 
} 
} 

проблема я столкнулся, когда я пытаюсь запустить программу, я получаю следующее сообщение об ошибке ...

com.restfb.exception.FacebookOAuthException: Received Facebook error response of type OAuthException: An active access token must be used to query information about the current user. (code 2500, subcode null) 

я полностью застрял - любая помощь будет принята с благодарностью ...

благодаря

ответ

0

Вам нужен маркер доступа пользователя для извлечения me ресурса, но вы запрашиваете в App маркер доступа.

+0

Norbert, спасибо, что указали это - я сделал исправление пару дней назад, но я все еще не могу получить информацию ... Я не использую правильный объект - объект FacebookClient? –

+0

попробуйте добавить 'Parameter.with (" fields "," first_name, last_name ")' to fetchObject. Я не уверен, какой графический API вы используете, но с 2,5 запрошенными полями не заполняются Facebook до тех пор, пока вы не запросите их. – Norbert

+0

Спасибо Norbert! –

Смежные вопросы