Facebook FQL返回<fql_query_response list ="true"/>

Joe*_*lio 4 ruby facebook facebook-fql

我试图让facebook fql查询使用浏览器工作,我有一个有效的oauth令牌(我可以使用它进行图形api调用).

这是我试过的网址:

https://api.facebook.com/method/fql.query?query=SELECT metric, value FROM insights WHERE object_id=89192912655 AND end_time=1280430050 AND period=86400 AND metric='page_fans'&access_token=?
Run Code Online (Sandbox Code Playgroud)

我还尝试首先通过sql编码器运行fql查询:

https://api.facebook.com/method/fql.query?query=SELECT%20metric%2C%20value%20FROM%20insights%20WHERE%20object_id%3D89192912655%20AND%20end_time%3D1280430050%20AND%20period%3D86400%20AND%20metric%3D'page_fans'&access_token=?
Run Code Online (Sandbox Code Playgroud)

我尝试了一些其他指标,我也可以通过图形api获取指标,所以我知道它们在那里.

我确定我做了一些愚蠢的事情,但我已经被这一段时间难住了!每次通话都会返回:

<?xml version="1.0" encoding="UTF-8"?>
<fql_query_response xmlns="http://api.facebook.com/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" list="true"/>
Run Code Online (Sandbox Code Playgroud)

也许我的日期有问题,我用它来得到日期:(红宝石)

t = Time.now
=> Tue Aug 03 15:00:50 -0400 2010
>> t = t - 5.days
=> Thu Jul 29 15:00:50 -0400 2010
>> t.to_i
=> 1280430050
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Xdx*_*ter 5

嘿伙计们,我们已经确认了这个错误.这是因为end_time必须与PST中的日期分隔符对齐,以便Insights表返回任何数据.为了解决这个问题,我们引入了两个可用于查询见解表的自定义函数:

  1. end_time_date():以字符串形式接受DATE(例如'2010-08-01')
  2. period():接受'life','day','week'和'month'

例如,您现在可以使用以下方法查询数据洞察表:

SELECT metric, value FROM insights
WHERE object_id = YOUR_APP_ID AND
      metric = 'application_active_users' AND
      end_time = end_time_date('2010-09-01') AND
      period = period('day');
Run Code Online (Sandbox Code Playgroud)

我们会尽快记录这些功能,对不起给您带来不便!

PS如果您不想使用end_time_date()函数,请确保查询中的end_time时间戳与PST中的日期分隔符保持一致.

谢谢!

Facebook洞察团队