Utilisation des API Facebook

Pour mon projet principal actuel j'utilise les API (oui, il y en a plusieurs) Facebook : Graph et FQL (sorte de SQL pour Facebook). Et je me suis rendu compte de façon partagée que l'on a accès à beaucoup moins de choses que lorsqu'on est connecté réellement sur Facebook. En gros, une application Facebook ne peut pas faire tout ce que vous vous pouvez faire sur Facebook.

Rapidement : on ne peut pas accéder à la liste d'amis d'un ami ; à cause de certaines options de confidentialité, il peut être impossible d'accéder aux photos d'un ami... Et à noter, Facebook ralenti surement volontairement les requêtes : il faut en moyenne une seconde pour avoir une réponse.

C'est bien, car on voit ainsi que les applications ne peuvent pas faire n'importe quoi, pour peu que nos options soient correctement configurées. Mais lorsqu'on est développeur honnête, on est restreint.

On peut cependant accéder aux amis en commun avec un ami, grâce au langage FQL. C'est un langage créé par Facebook qui utilise la même syntaxe que le SQL et qui permet de passer des requêtes complexes à Facebook. C'est vraiment très pratique, et ça permet de récupérer les amis en commun :

SELECT uid2 FROM friend WHERE uid1=id_de_lami AND uid2 IN (SELECT uid2 FROM friend WHERE uid1=me())

Une requête en fait assez simple je conçois. ;)