将时间跨度传递给facebook打开图表

时间:2011-11-13 16:24:22

标签: php facebook facebook-graph-api

如何指定我的动作在现在或过去呈现的时间? 我试过了 -

$facebook -> api('/me/myapp:read', 'POST', array('expires_in' => '180', 'start_time' => date('c'), 'access_token' => $this -> session -> userdata('ftoken'), 'object' => base_url() . $data['link']));

但这不起作用 - 所以我没有得到什么?

解释 :read实际上只是我的Facebook应用中的操作。帖子正在发生,“阅读”动作正在被记录,问题是它总是以“过去”的形式呈现在

  

雅各布在http://mysite.com

上读爸爸

而不是现在

  

Jakob 正在http://mysite.com

上阅读 dadad

我的问题是,在提交动作后3分钟正在阅读时,我如何让facebook呈现状态(因此'expires_in' => '180'是180秒等于3分钟)

2 个答案:

答案 0 :(得分:0)

雅各布,你想做什么?

  

$ facebook - > api('/ me / myapp:read','POST',array('expires_in'=>'180','start_time'=> date('c'),'access_token'=> $ this - &gt ; session - > userdata('ftoken'),'object'=> base_url()。$ data ['link']));

当您在Facebook上更新某些内容时,您会发出POST命令(第2个parm),您要更新的内容(第1个parm;您的墙,事件等)以及第3个中的任何数据。

如果您正在尝试阅读GET命令。不确定您是否想要在您的应用中获取所有墙上的帖子。但如果是的话,试试这个:

$facebook->api('/YOURAPPID/feed?access_token'.$this -> session -> userdata('ftoken'),'GET');

<强>更新

误解了原来的问题。你的电话似乎是对的。如果您正在向应用程序发布操作并且在“操作配置”页面中正确配置了“过去/现在时态”(以及多个版本),则应显示“读取”3分钟并“读取”。

答案 1 :(得分:0)

如果您的开始时间是现在,最简单的方法是将“expires_in”指定为POST变量。这是一个可选参数,表示您的操作应保持现在时的持续时间(以秒为单位)。

来自documentation

  

expires_in(整数)

     

此操作被视为“旧”之前的秒数。来自   直到expires_in秒已经过去的动作时间,动作是   被认为是“现在时”,之后被认为是“过去的”   紧张”。

     

expires_in是指定end_time的快捷方式   更方便的是在动作之间提供以秒为单位的增量   开始时和结束时例如,当用户开始观看时   电影,当你发表观看动作时,expires_in应该是长度   这部电影只需几秒钟。