Facebook FQL запрос Android - PullRequest
       0

Facebook FQL запрос Android

0 голосов
/ 12 октября 2011

Я хочу получить список друзей, а также некоторые поля, такие как profile_pic, username и т. Д., Для этого я использую

SELECT name,relationship_status,current_location 
         FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())

Возвращается <fql_query_response list="true"/>

и нет списка друзейидет.

Edit: `"https://api.facebook.com/method/fql.query?&access_token="+accesstoken+"&query=SELECT name FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1="+id+")";`

и передает это этому методу:

public String request(String fql)  throws FileNotFoundException, MalformedURLException, IOException {
             Bundle parameters = new Bundle();
             parameters.putString("format", "json");
             parameters.putString("query", fql);
             parameters.putString("access_token",facebookClient.getAccessToken());

             if (facebookClient.isSessionValid()) {
                 parameters.putString("access_token",facebookClient.getAccessToken());
             }
                     String url = (fql != null) ? "https://api.facebook.com/method/fql.query" : "https://api.facebook.com/restserver.php";
             return Util.openUrl(url, "GET", parameters);
             }

но возвращает 400 неверных запросов?но когда я запускаю этот URL в браузере, он работает правильно

Что я делаю не так?Может кто-нибудь дать мне кусок кода для выполнения этого запроса?

Спасибо

1 Ответ

2 голосов
/ 12 октября 2011

Я получил это atlaasst, дело в том, что мы должны закодировать fql-запрос перед его выполнением.

Используйте это:

 public String request(String fql)  throws FileNotFoundException, MalformedURLException, IOException {
             Bundle parameters = new Bundle();

             if (facebookClient.isSessionValid()) {
                 //parameters.putString("access_token",facebookClient.getAccessToken());
             }
                     String url = (fql != null) ? "https://api.facebook.com/method/fql.query?&access_token="+accesstoken+"&query="+URLEncoder.encode(fql) : "https://api.facebook.com/restserver.php";

                     System.out.println("url imple"+url);
                     return Util.openUrl(url, "GET", parameters);
             }
...