Facebook Graph API - comment obtenir de l'utilisateur du pays?
Je suis l'élaboration d'un Facebook application utilisant leur API Graphique. J'ai déjà développé une application à l'aide de l'obsolète API REST.
J'ai rencontré un problème que je ne peux pas récupérer le pays de l'utilisateur, seulement leur "localisation" - qui est juste la ville et de l'etat /région dans un format combiné (tels que les " Houston, Texas).
Comment est-il possible de récupérer le pays de l'utilisateur à l'aide de l'API Graphique? Si ce n'est pas directement possible, quelles solutions pourrait-il y avoir pour y parvenir?
Vous devez vous connecter pour publier un commentaire.
https://api.facebook.com/method/fql.query?format=json&query=SELECT%20current_location%20FROM%20user%20WHERE%20uid=4&access_token=<ACCESS_TOKEN>
FQL Documentation
Une solution que j'ai trouvé, qui n'est qu'une solution de contournement consiste à utiliser le GeoNames API - http://www.geonames.org/export/web-services.html
En utilisant quelque chose comme:
Renvoie les résultats dans un objet xml, avec le pays en tant que partie des données.
Je ne suis pas particulièrement heureux avec cette solution, cependant, car il ajoute une couche supplémentaire de complications à ma demande plus de demandes de ce des services gratuits sont limités à 2000 à l'heure et de 30 000 par jour.
Utiliser le sdk php:
Alors demander une demande signée:
Maintenant, $pays a une chaîne telle que "nous" pour les États-unis et le "uk" pour le Royaume-Uni, etc..
C'est une bonne question.
Le problème est que toute l'exécution de l'application en vertu de facebook est de passer par facebook serveurs de fb proxy et de ce fait, l'adresse IP que vous obtenez n'est pas que de visiteurs, mais facebook serveurs " à la place qui n'est d'aucune utilité.
Je n'ai vu aucune solution pour cela encore sauf pour faire de l'utilisateur du pays à partir de son profil, qui encore une fois n'est possible que si l'utilisateur avait rendu public ou autorisé l'autorisation pour cela.
Voici un lien utile, vous pourriez vouloir vérifier là aussi:
Vous devriez essayer comme ceci:
utiliser la langue officielle Facebook API Graphique /me?champs=ville natale il sera de retour vous, par exemple, "Prague, République tchèque"
Je crois que vous pouvez exploser la chaîne en aiguille ',' et le dernier élément devrait être le pays
pour iframe apps, l'ip n'est pas caché par FB serveurs, ce qui signifie que vous pouvez faire la recherche d'adresse ip
http://phpweby.com/software/ip2country
le scénario était un peu buggé pour moi, mais a fait le travail.
Selon Facebook du la documentation, vous pouvez obtenir le 2-lettre La norme ISO 3166-1 code du pays de l'utilisateur
locale
.Exemple FQL:
Réponse:
Vous pouvez voir la durée de vie nombre de followers (par aime votre page FB) par pays à l'aide d'un FQL requête. Définir une requête JSON à l'aide de la segmentées en valeur de session, et envoyer un FQL requête via PHP avec le object_ID de la page de ciblage et de la période de durée de vie. sélectionnez le système métrique, et de définir la métrique de page_fans_country - et vidage de données dans un fichier CSV. Vous devriez obtenir une liste de durée de vie totale disciples (par choix) par le code du pays (plusieurs lignes). L'installation d'un tableau croisé dynamique pour obtenir un indice agrégé à travers plusieurs pages de données, et de les classer par le code du pays. Voici l'exemple de la FQL requête:
SÉLECTIONNEZ le système métrique, la valeur D'idées OÙ object_id=[votre ID de page passe ici] ET métrique='page_fans_country" ET end_time=end_time_date('2013-04-28') ET de la période=période ("lifetime")
Réponse posté par Valerchik est la bonne en effet, mais au cas où quelqu'un serait à la recherche de solution PHP, puis je me suis retrouvé avec quelque chose comme ceci:
Liste de tous les attributs de l'utilisateur peut être trouvé ici:
https://developers.facebook.com/docs/reference/fql/user/
J'espère que ça aidera quelqu'un 🙂