web-dev-qa-db-fra.com

Pourquoi l'API Facebook Graph dit-elle que mon compte est inactif?

Certains codes utilisent l’API Open Graph de Facebook pour afficher certains messages sur notre page d’accueil. Il a été initialement développé par un développeur précédent et je l’ai réécrit dans ASP.NET MVC pour notre page d’accueil (où il était auparavant PHP qui, je crois, a été chargé dans un iframe). J'ai utilisé l'identifiant et le secret de l'application qui me restaient. Cela fonctionnait bien depuis quelques années. Cet après-midi, nous avons commencé à recevoir une erreur sur notre site: "L'accès à ces données est temporairement désactivé pour les comptes non actifs en raison de aux changements que nous apportons à la plate-forme Facebook ".

Pas de transpiration. J'ai pensé que je devais juste mettre à jour notre identité et notre secret. Malheureusement, personne ne semble se souvenir de l'ID utilisateur qui contrôlait cet ID d'application. Pas de transpiration. Je vais faire le mien. Malheureusement, tous les identifiants et secrets que j'utilise pour accéder aux publications - même mes propres publications sur une page totalement sans rapport avec le travail - renvoient la même erreur d'accès. Je peux obtenir un nom, une couverture ou d'autres champs, mais dès que je demande un message, j'obtiens l'erreur.

Voici un exemple de ce que j'essaie:

https://graph.facebook.com/MyCompanyName?fields=cover,name,likes,link,posts.limit(5){created_time,message,link,type,full_picture,picture,source,icon}&access_token=bunchofnumbers|bunchofnumbersandletters

Je suis au courant du statut affiché à l'adresse https://developers.facebook.com/status/issues/205942813488872/ , mais je pense que je dois faire quelque chose de mal car je ne peux même pas créer de nouveaux identifiants d'application. obtenir des messages avec.

Pourquoi l'API Facebook Graph dit-elle que mon compte est inactif?

Merci.

40
mrcoulson

S'il vous plaît lire cet article:

Mark Zuckerberg s'excuse pour les "erreurs" de Facebook sur Cambridge Analytica

Aleksandr Kogan, chercheur à l’Université de Cambridge, avait utilisé une application pour extraire les informations de plus de 50 millions de personnes, puis l’avait transférée à Cambridge Analytica pour un usage commercial et politique.

Facebook modifie donc ses politiques afin de sécuriser davantage ses données personnelles.

Jusque-là, vous ne pouvez rien faire à ce sujet.

26
Amit Kumar

J'ai résolu le problème sur mon site Web en supprimant les événements de la liste des champs récupérés.

3
A. Dabak

Nous avons commencé à voir ce même message d'erreur sur notre plate-forme aujourd'hui. Je pense qu'il y a plusieurs choses qui sont liées:

  1. Comme d'autres l'ont mentionné, Facebook a rapidement réagi de manière décisive pour renforcer la protection des données et la confidentialité des données à la suite de l'incident de Cambridge Analytica. D'après ce que j'ai compris, les mauvais acteurs ont exploité leur capacité à accéder aux données des utilisateurs (via le graphique) avec lesquelles l'application n'avait pas de relation directe avec la première partie. Alors, un peu comme "6 degrés de séparation" vous donneraient la planète entière, le 1 degré de séparation sur les quelques centaines de milliers d'utilisateurs connectés à l'application donnaient directement accès à l'application à environ 50 millions d'utilisateurs ... ou quelque chose comme ça. FB fait tout ce qu'il peut pour verrouiller tout ça maintenant.
  2. La cause spécifique de votre erreur est que quelque chose que vous demandez dans le paramètre fields fait un saut (à partir du myCompany ou de l'utilisateur/application OAuth'd dont access_token vous utilisez) à un ou plusieurs articles connexes que FB considère désormais comme ayant une relation directe/directe "active" avec votre société/application/utilisateur pour pouvoir y accéder. C’est la raison pour laquelle vous voyez le caractère quelque peu crypté "non-active accounts "mentionnant. Je pense qu'ils signifient vraiment que ce n'est pas" actif avec vous ou votre application ".

Je ne suis pas sûr de savoir lequel des fields que vous demandez est en faute, mais quelques essais et erreurs vous y mèneront. Pour nous, c'était clair: nous demandions les membres de tous les groupes auxquels l'utilisateur avait accès. Nous n’avions pas besoin de cela, nous avons donc éliminé l’erreur.

3
cwnewhouse
2
David Hackro

Je travaille actuellement avec l'API Open Graph de Facebook. Et j'ai eu cette erreur chaque fois que je voulais accéder/obtenir le membre (et leurs informations de base) des groupes que je suis Admin.

{
  "error": {
 "message": "(#200) Access to this data is temporarily disabled for non-active accounts due to changes we are making to the Facebook Platform",
"type": "OAuthException",
"code": 200,
"fbtrace_id": "Byueyj6MtkoIx"
 }
}

Entre essais et erreurs, @JoshChristy obtenait tous les résultats souhaités! Et après quelques heures de recherche, nous avons découvert que Facebook reconnaissait certains comptes comme "non actifs" et d'autres "actifs" (je ne sais pas sur quoi!), Car je suis très actif sur Facebook. Donc, si vous obtenez cette erreur, cela signifie que vous n'êtes pas assez actif pour Facebook;)

1
naqib83

Je crois comprendre que si vous n'êtes pas une application de production, ils vous limitent pour des raisons spécifiques. Je ne sais pas si c'est à cause de Cambridge Leak ou de la mise à niveau de l'API instagram.

J'ai également reçu la même erreur, cependant, si vous testez, vous pouvez coder en dur le jeton graphique api Explorer dans votre application pour continuer à tester ...

var data {
    'accessToken': 'EEAC...',
}

FB.api('/' + id, getData, data, (_response) => {
    console.log(_response);
});
1
Denis Angell

Pour moi, cela fonctionne si je ne laisse qu'un champ - "nom". Si j'ajoute des champs "link" et/ou "events", l'erreur sera renvoyée

0
Zoreslav Goral

J'ai eu ce problème. C'est résolu automatiquement. Je pense que c'est un problème de Facebook.

0
yasaryousuf

J'ai pu obtenir le jeton d'accès aux pages de Facebook en utilisant la méthode ci-dessous.

Pour tous ceux qui peuvent déjà une application qui a été examinée peut utiliser les détails de cette application comme solution temporaire jusqu'à ce que Facebook ait terminé ses améliorations de l'API. Cela signifie que vous devrez ajouter les uris de redirection pertinentes à l'application examinée, ainsi que utiliser l'identifiant et le secret de l'application.

Cela fonctionne pour récupérer des fils de page et des pistes, je n’ai pas pu récupérer des conversations. Les autorisations demandées étaient également {scope: 'ads_management, ads_read, manage_pages'}

0

Dans notre cas, nous avons récupéré, par exemple, une page access_token avec un ID de page en utilisant comme ceci:

this.call('v2.12/'+pageid, 'GET', {fields: "access_token"}, token)

fini avec l'erreur que vous avez mentionnée.

Cependant, nous avons adopté une approche normale et tout semble bien aller maintenant. https://developers.facebook.com/docs/facebook-login/access-tokens#pagetokens

0
goodhyun

La même chose que je viens de remarquer aussi, et ils ont gardé mes annonces de génération principale en cours de lecture et me chargeaient bien qu’ils aient bloqué les données.

Heureusement, vous pouvez toujours télécharger les fichiers CSV/XLS dans le gestionnaire d’annonces directement.

0
J-a-n-u-s