为啥 Facebook Graph API 显示我的帐户处于非活动状态?

Posted

技术标签:

【中文标题】为啥 Facebook Graph API 显示我的帐户处于非活动状态?【英文标题】:Why does Facebook Graph API say my account is non-active?为什么 Facebook Graph API 显示我的帐户处于非活动状态? 【发布时间】:2018-03-21 23:00:32 【问题描述】:

我们有一些代码使用 Facebook Open Graph API 在我们的主页上显示一些帖子。它最初是由以前的开发人员开发的,我在 ASP.NET MVC 中为我们的主页重写了它(之前是 php,我相信它是在 iframe 中加载的)。那时,我使用了留给我的 app ID 和 secret。这已经运行了几年。今天下午,我们开始在我们的网站上收到一条错误消息:“由于我们对 Facebook 平台进行的更改,非活动帐户暂时无法访问此数据”。

没有汗水。我想我只需要更新我们的 ID 和密码。不幸的是,似乎没有人记得控制该应用程序 ID 的用户 ID。没有汗水。我会自己做的。不幸的是,我用来访问帖子的任何 ID 和秘密——甚至是我自己在与工作完全无关的页面上发布的帖子——都会返回相同的访问错误。我可以获取姓名或封面或其他一些字段,但只要我请求任何帖子,就会收到错误消息。

这是我正在尝试的示例:

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

我知道https://developers.facebook.com/status/issues/205942813488872/ 的状态帖子,但我认为我一定做错了,因为我什至无法创建新的 appID 来获取帖子。

为什么 Facebook Graph API 显示我的帐户处于非活动状态?

谢谢。

【问题讨论】:

我在获取用户组时遇到了同样的问题。大约 2 小时前工作正常... 我也遇到了这个问题,图形浏览器工作但我使用的是 PHP sdk,图形令牌也不适用于 PHP SDK 当我尝试获取有关用户页面的信息时,我也面临同样的问题(我已获得 fb 的许可) 我今天早上醒来发现问题已解决。这是一个美好的早晨惊喜。但是,我希望该消息更具描述性或帮助性。 “请不要争先恐后地重写您网站上的代码。我们只是在做一些调整。” 我仍然面临用户组的这个问题。希望 Facebook 尽快做出改变和修复。 【参考方案1】:

请阅读这篇文章:

Mark Zuckerberg apologises for Facebook's 'mistakes' over Cambridge Analytica

名为 Aleksandr Kogan 的剑桥大学研究员曾使用一款应用程序提取了超过 5000 万人的信息,然后将其转移到 Cambridge Analytica 用于商业和政治用途。

因此,Facebook 正在更改其政策,以使个人数据更加安全。

在此之前,您无能为力。

【讨论】:

仍然无法正常工作,而且我不要求举办活动等。无济于事,例如。简单/feed?fields=name。是否有更多信息何时开始工作,或者如何运行? 我只想下载有关活动的信息,没有个人数据,我仍然收到此通知。我做错了吗?【参考方案2】:

我通过从获取的字段列表中删除事件解决了我网站上的问题

【讨论】:

我不知道这是否是这个问题的真正解决方案。但它解决了我眼前的问题! 不,这不是一个解决方案,但它可以让我的网站再次运行,直到出现更好的解决方案 @A.Dabak 感谢您的提示,但事件都是我想要的 - 失败:D【参考方案3】:

我们今天开始在我们的平台上看到同样的错误消息。我认为有几件事情是相互联系在一起的:

    正如其他人所提到的,鉴于 Cambridge Analytica 事件,Facebook 做出了迅速而重大的反应,以加强数据保护和隐私。据我了解,不良行为者利用了访问用户数据的能力(通过图表),该应用程序没有与之建立活跃的第一方关系。所以,有点像“6 度分离”如何让你获得整个星球,与应用程序直接连接的数十万用户的 1 度分离度让应用程序访问了大约 5000 万用户......或类似的东西。 FB 正在尽其所能来锁定这些东西,非常重要。 您的错误的具体原因是您在fields 参数中要求的内容发生了飞跃(来自myCompany 或您正在使用的access_token 的OAuth 用户/应用程序)到 FB 现在认为必须与您的公司/应用程序/用户具有“活跃”的第一方/直接关系才能访问的相关项目。这就是为什么您会看到有些神秘的“non-active accounts”提及。我认为它们的真正意思是它不是“与您或您的应用一起使用”。

我不确定您请求的fields 中的哪一个有问题,但一些反复试验会引导您找到它。对我们来说,很清楚:我们要求用户有权访问的所有组的成员。我们不需要那个,所以我们把它删掉了,错误就消失了。

【讨论】:

【参考方案4】:

Facebook 今天更新了条款和条件 https://developers.facebook.com/docs/graph-api/changelog/breaking-changes/?translation&hc_location=ufi#groups-4-4

【讨论】:

【参考方案5】:

我的理解是,如果您不是生产应用程序,它们会出于特定原因限制您。不清楚这是因为剑桥泄漏,还是升级了 instagram api。

我也收到了同样的错误,但是,如果您正在测试,您可以将 graph api explorer 令牌硬编码到您的应用程序中以继续测试...

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


FB.api('/' + id, getData, data, (_response) => 
    console.log(_response);
);

【讨论】:

哇哦!对不起,伙计!我正在测试,所以它帮助我解决了一个问题。祝你好运! 顺便说一句,你有什么范围? newsroom.fb.com/news/2018/03/cracking-down-on-platform-abuse @Denis:你所说的限制到底是什么意思?我有一个处于开发模式的应用程序,当然我想在更改为生产之前检查一切是否正常。是否无法在开发模式下使用应用获取 Facebook 帖子? 好的,我在下面找到了 David Heckro 发布的段落。这回答了我的问题。【参考方案6】:

现在我正在使用 Facebook Open Graph API。每次我想访问/获取我是管理员的组的成员(及其基本信息)时,我都会遇到这个错误。


  "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"
 

在试错之间@JoshChristy 得到了所有想要的结果!经过几个小时的研究,我们发现 facebook 将一些帐户识别为“非活动”和一些“活动”(我不知道基于什么!)因为我在 facebook 中非常活跃。 因此,如果您收到此错误,则表示您对 facebook 不够活跃;)

【讨论】:

FB 完全是废话!这么久了马克的承诺“两年内不刹车API”@#$【参考方案7】:

我遇到了这个问题。它会自动解决。我认为这是 Facebook 的问题。

【讨论】:

【参考方案8】:

对我来说,如果我只留下一个字段 - “名称”,它就会起作用。如果我添加“链接”和/或“事件”字段,它会返回错误

【讨论】:

我试过这个,但对我来说,即使我只为字段留下“名称”,它也会产生相同的错误结果。【参考方案9】:

我能够使用以下方法获取 Facebook 页面访问令牌。

对于任何可能已经拥有经过审核的应用的人,可以使用该应用的详细信息作为临时修复,直到 Facebook 完成其 API 增强功能。这意味着您必须将相关的重定向 uri 添加到已审核的应用中,并使用该应用的 App Id 和 App Secret。

这适用于检索页面供稿和潜在客户,但我无法检索对话。我请求的权限也是 scope: 'ads_management,ads_read,manage_pages'

【讨论】:

【参考方案10】:

在我们的例子中,例如,我们使用如下方式检索具有页面 ID 的页面 access_token:

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

以您提到的错误结束。

但是,我们采取了正常的方法,现在一切看起来都很好。 https://developers.facebook.com/docs/facebook-login/access-tokens#pagetokens

【讨论】:

【参考方案11】:

我刚刚也注意到了同样的事情,尽管他们屏蔽了数据,但他们仍让我的潜在客户广告继续投放并向我收费。

幸运的是,您仍然可以直接进入广告管理器下载 CSV/XLS 文件。

【讨论】:

【参考方案12】:

什么是问题? 此错误是由于 Facebook 最近采取的措施造成的。他们说“由于我们正在对 Facebook 平台进行更改,非活动帐户对某些类型的 API 数据的访问被暂停”因此,如果您的帐户处于非活动状态并且您使用它创建了应用程序,那么您可能会得到这个插件中的错误。 Facebook 问题链接是

什么时候解决? Facebook 暂时禁用了一些不活跃的帐户,因为他们提到他们没有给出任何估计的时间来解决问题,但它应该很快就会被激活。

您可以在facebook Event API here找到更多更新

【讨论】:

这个答案没有添加比错误消息中所述的信息,而且没有帮助。

以上是关于为啥 Facebook Graph API 显示我的帐户处于非活动状态?的主要内容,如果未能解决你的问题,请参考以下文章

Facebook iOS SDK:为啥我收到“您必须将此应用升级到 Graph API v2.x”?

Facebook Graph API Explorer 显示空白页

Facebook Graph API Group Feed没有显示v2.3之后的帖子

Instagram 的帖子未显示在 Facebook Open Graph API 上

Facebook Graph API 2.5 - 无法访问好友

Facebook Graph api使用javascript获取fb帖子以显示在网站中