2016-01-05 6 views
-1

У меня есть код, который приносит ответ json от twitter api. Я хочу использовать тот же код для facebook graph api, чтобы получить ответ json от Facebook, но facebook не предоставляет никаких потребительских ключей в качестве твиттера. Я могу изменить этот код, чтобы получить ответ facebook json. Может ли кто-нибудь из вас помочь изменить код.Как получить данные ответа json, используя facebook graph api 2.5?

public class TwitterResponse { 

    static String AccessToken = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; 
    static String AccessSecret = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; 
    static String ConsumerKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; 
    static String ConsumerSecret = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; 

    /** 
    * @param args 
    */ 

    public static void main(String[] args) throws Exception 
    { 
    OAuthConsumer consumer = new CommonsHttpOAuthConsumer(ConsumerKey,ConsumerSecret); 
    String twitterUrl="https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=heymailme143&count=1&include_rts=true&contributors=true"; 

    consumer.setTokenWithSecret(AccessToken, AccessSecret); 

    //HttpGet request = new HttpGet("https://api.twitter.com/1.1/friends/list.json"); 
    HttpGet request = new HttpGet(twitter); 

    consumer.sign(request); 
    HttpClient client = new DefaultHttpClient(); 
    HttpResponse response = client.execute(request); 
    int statusCode = response.getStatusLine().getStatusCode(); 
    String m=IOUtils.toString(response.getEntity().getContent()); 
    System.out.println(m); 
    System.out.println(statusCode + ":" + response.getStatusLine().getReasonPhrase()); 
    } 
} 

Это пример кода, который я использовал для получения ответа twitter. Не могли бы вы помочь мне изменить его, чтобы получить ответ на facebook с помощью fb graph api?

+0

у вас разрешения от пользователя для доступа к его персональным данным? –

+1

ссылается на мой ответ, чтобы получить разрешение от пользователя. Http: //stackoverflow.com/questions/5127527/how-to-post-facebook-wall-automatically-with-facebook-api-only-with-userid/10045798#10045798 –

+0

жаль, что я тебя не понял! вы говорите мне, что у меня есть разрешения от пользователя, прежде чем я получу данные о нем? @khAn –

ответ

1

Посмотрите

, который также имеет некоторые examples.

+0

Мне нужен ответ json в соответствии с моими знаниями. FB4J дает нужные поля только не ответ json. Думаю, @Tobi –

+0

Что ты имеешь в виду? И какой смысл это сделать, чтобы иметь простой текст JSON, если вы используете Java? – Tobi

+0

Я ищу ответ json @Tobi –

0

Я ищу это :)

public String getUserInfo(String access_token) throws MalformedURLException, ProtocolException, IOException { 
    try { 
     String connection = connectionGet("https://graph.facebook.com/me?access_token=" + access_token, ""); 


     System.out.println("done"); 
     return connection; 

    } catch (Exception e) { 
     System.out.println("null value"); 
     return null; 
    } 
} 


public static String connectionGet(String url, String parameter) throws MalformedURLException, ProtocolException, IOException { 

    URL url1 = new URL(url); 
    HttpURLConnection request1 = (HttpURLConnection) url1.openConnection(); 
    request1.setRequestMethod("GET"); 
    request1.connect(); 
    String responseBody = convertStreamToString(request1.getInputStream()); 
    return responseBody; 
} 

    private static String convertStreamToString(InputStream is) { 
    BufferedReader reader = new BufferedReader(new InputStreamReader(is)); 
    StringBuilder sb = new StringBuilder(); 
    String line = null; 
    try { 
     while ((line = reader.readLine()) != null) { 
      sb.append(line).append("\n"); 
     } 
    } catch (IOException e) { 
    } finally { 
     try { 
      is.close(); 
     } catch (IOException e) { 
     } 
    } 
    System.out.println(sb.toString()); 
    return sb.toString(); 

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