Facebook Graph API - obtenir un identifiant d'album photo
Je suis en train d'écrire une application qui télécharge une photo sur facebook. Je ne suis pas la fourniture d'un album d'identité ainsi qu'un album est créé au nom de mon application.
Ma question est: comment puis-je obtenir de l'album de l'ID de la photo a été téléchargé?
Quand je GET
le les informations de la photo de l'album n'est pas présent dans le JSON qui était mon espoir.
source d'informationauteur joseym
Vous devez vous connecter pour publier un commentaire.
Cette question a été mise sur écoute de moi pendant un moment, mais je pense que j'ai craqué à la noix.
L'album ID est caché dans la valeur de ce lien, donc si vous avez une photo-post de l'objet à partir de l'API Graphique, vous pouvez récupérer l'Album ID comme ceci:
Il pourrait probablement tous être réduite à une seule ligne de code, mais je pense que c'est plus lisible.
Pour obtenir les informations de l'album d'utilisation:
Pour obtenir toutes les photos dans un album d'utilisation:
Espère que cela peut aider quelqu'un.
Jimmy Sawczuk's réponse est proche, mais ne fonctionne pas parce que FQL Photo colonnes de la table de
aid
etpid
sont Rest/FQL API id, pas l'API Graphique de l'ids.Heureusement, le
object_id
etalbum_object_id
colonnes de ce tableau sont indexables (contrairement à la documentation) donc cela devrait vous donner à la fois au Repos et à l'FQL & Graph id de l'album:En général
object_id
champs de Repos/FQL API réponses sont Graph API id (sauf pour la photo de notifications, où il est le Reste/FQL id).Re HonkyHonk's réponse: non, pas toutes les photos
link
les url ont unset
paramètre; dans ce cas, je pense que vous pouvez trouver le Reste/FQL API photo d'identité à partir de ses autres paramètres, puis Repos/FQL API pour obtenir l'album id:(id << 32) | pid
2360873244068853905
id
_
etpid
100002937903251_155052
Il serait d'une grande aide si Facebook pouvait document de quelque chose à propos de ces deux types d'ids. Aussi l'API Graphique Photo schéma devrait inclure l'album de l'API Graphique id.
C'est le moyen facile d'obtenir :
Si je vous comprends bien, vous avez la photo d'identité, mais ont besoin de l'album ID. Vous pouvez essayer d'utiliser le
photo
FQL table avec la requête suivante:De Long, maladroit, mais théoriquement valable pour:
http://graph.facebook.com/userid/albums
vous permet d'obtenir une liste de tous les albums de l'utilisateur vous permet de voir, ensuite, vous pouvez rechercher l'album d'objets (api ici)for created_times
qui correspondent à l'heure de création de l'album, que vous pouvez stocker lorsque vous créez l'album.Ce n'est presque certainement une horrible façon de le faire, mais il devrait fonctionner.
Richard Barnett est une solution qui fonctionne bien pour moi, j'utilise cela comme une FQL requête par le biais de l'API Graphique pour obtenir une réponse JSON comme je le ferais pour n'importe quel autre API Graphique de requête:
Ce retourne:
Ensuite, vous pouvez accéder à l'album ID à l'aide de:
C'est la solution la plus propre que j'ai trouvé comme Facebook constamment modifier le format des photos et de l'album des Url pour l'analyse de ces avec la RegEx ne fonctionnent pas à long terme correctif.
J'ai fini juste à l'aide de l'héritage de l'api REST depuis l'album ID est transmis avec le lien de l'image dans la réponse du serveur. J'ai ensuite utilisé un regex pour tirer le id.
Pas la meilleure solution et je ne le recommande pas, mais je me sens mieux que d'ajouter un autre plusieurs demandes de serveur pour le code.