我有两个facebook页面上的即时通讯管理,让他们称为page_a
和page_b
如果我为page_a运行此命令,它将按预期工作:
HTTP GET -> {PAGE_A_ID}/insights?metric=page_fans_country
{
"data": [
{
"name": "page_fans_country",
"period": "day",
"values": [
{
"value": {
"AR": 4,
"AT": 13,
"AU": 7,
"BE": 16,
....
我使用的页面访问令牌具有以下作用域:read_insights
、manage_pages
、pages_show_list
和public_profile
但是当我试图查询一个帖子的详细信息时,我得到了这样的结果
HTTP GET -> {PAGE_A_ID}_{PAGE_A_POSTID}/insights?metric=post_impressions,post_impressions_unique,post_video_views,post_video_views_unique&period=lifetime
{
"error": {
"message": "Permissions error",
"type": "OAuthException",
"code": 200,
"error_subcode": 1504029,
"is_transient": false,
"error_user_title": "User doesn't have enough permissions to load insights",
"error_user_msg": "You do not have enough permission to view the metric.",
"fbtrace_id": "..."
}
}
当我对page_b执行同样的操作时,它也可以工作
HTTP GET -> {PAGE_B_ID}_{PAGE_B_POSTID}/insights?metric=post_impressions,post_impressions_unique,post_video_views,post_video_views_unique&period=lifetime
{
"data": [
{
"name": "post_video_views",
"period": "lifetime",
"values": [
{
"value": 0
}
],
....
page_b的页面访问令牌与page_a的页面访问令牌具有相同的范围
我可以在facebooks中看到所有的数字,但我不能通过API访问它,有人以前有过类似的问题吗?,我卡住了,不知道从哪里去。
所有上述代码都已在Facebook Graph Explore中运行,并带有新生成的令牌。
任何关于从这里到哪里去的意见都是值得感谢的。
发布于 2019-03-19 10:16:28
正如@xuantuan58的评论中提到的,这似乎是FB API中的一个bug。https://developers.facebook.com/support/bugs/301627877187448/
也可能与这个错误报告有关:https://developers.facebook.com/support/bugs/2380273985356980/
我注意到它只发生在某些用户&页面上,但到目前为止还看不到模式。有时API不会返回错误,而只是返回一个空的数据数组。如果您认为响应中应该有数据,请尝试使用图形资源管理器工具,因为我发现这有时会给出更好的错误响应。
https://developers.facebook.com/tools/explorer/
更新:这个问题现在已经被Facebook标记为已解决。我一直在测试,发现这个问题确实已经解决了。
发布于 2019-03-19 00:57:58
几天前我们也遇到了同样的问题。在使用作用域之后,我们发现如果business_management
作用域是授权的,那么我们就得到了数据。但很明显,阅读页面洞察并不需要来自document的business_management
。希望有人有更好的见解
https://stackoverflow.com/questions/55220551
复制