C# 使用FacebookGraphAPI以逆时间顺序检索状态的注释

C# 使用FacebookGraphAPI以逆时间顺序检索状态的注释,c#,facebook,facebook-graph-api,C#,Facebook,Facebook Graph Api,我正试图从Facebook的Graph API中按时间倒序检索状态的评论,也就是说最新的评论应该放在最上面。我甚至不确定这是否可能 我知道Facebook默认按时间顺序降序排列帖子,而评论默认按时间顺序升序排列(最早的在顶部)。默认情况下,我指的是Facebook.com以及从API检索它们的方式 使用Graph API,我可以按降序检索状态,但注释是按升序返回的。我希望从API中以相反的顺序获取注释,而不必在程序中对它们进行排序。原因是该程序仅限于它将下载的#条注释,因此设置limit=xx实

我正试图从Facebook的Graph API中按时间倒序检索状态的评论,也就是说最新的评论应该放在最上面。我甚至不确定这是否可能

我知道Facebook默认按时间顺序降序排列帖子,而评论默认按时间顺序升序排列(最早的在顶部)。默认情况下,我指的是Facebook.com以及从API检索它们的方式

使用Graph API,我可以按降序检索状态,但注释是按升序返回的。我希望从API中以相反的顺序获取注释,而不必在程序中对它们进行排序。原因是该程序仅限于它将下载的#条注释,因此设置limit=xx实际上将检索到前xx条注释,而不是最新的xx条注释。这对我没有好处,因为如果一个状态有500条评论,并且xx=100,它将始终检索相同的评论集(要发布的前100条)

我能找到的Html请求的最佳参数是'order_by',它查找一个时间/日期参数(updated_time),但这实际上不起作用,因为它已经按updated_time排序(但升序)。如果可能的话,我想通过降低更新时间来指定订单


任何帮助都将不胜感激。

使用API没有直接的方法来实现这一点,但实现这一点的一种方法是检索状态的所有注释,将它们分配到一个数组,并以相反的顺序遍历结果

下面的示例从吉尼斯爱尔兰页面获取最后一次状态更新,并将所有消息分配到一个数组中。一旦我们有了这个数组,我们就可以通过循环输出结果

示例:
$data=文件\u获取\u内容('https://graph.facebook.com/GuinnessIreland/statuses?limit=1&access_token=“.$ACCESS_TOKEN)

$comments=json_decode($data)
$messages=($comments->data[0]->comments->data)

对于($counter=count($messages);$counter>=0;$counter=$counter-1){
echo$messageArray[$counter]->message;
echo$messageArray[$counter]->创建时间;

}

使用API没有直接的方法,但实现这一点的一种方法是检索状态的所有注释,将它们分配到一个数组,然后按相反的顺序循环结果

下面的示例从吉尼斯爱尔兰页面获取最后一次状态更新,并将所有消息分配到一个数组中。一旦我们有了这个数组,我们就可以通过循环输出结果

示例:
$data=文件\u获取\u内容('https://graph.facebook.com/GuinnessIreland/statuses?limit=1&access_token=“.$ACCESS_TOKEN)

$comments=json_decode($data)
$messages=($comments->data[0]->comments->data)

对于($counter=count($messages);$counter>=0;$counter=$counter-1){
echo$messageArray[$counter]->message;
echo$messageArray[$counter]->创建时间;

}

您可以通过此url使用get请求获取评论。。您将得到json响应

“StatusID”/comments?limit=500&access\u token=“accessToken”

StatusID=132343454_54346345 用户标识状态标识 accessToken=用户访问令牌

您将得到JSOn响应。获取所有详细信息,如评论用户、评论ID、消息。。。 您将得到JSON响应。解析它们。通过在中连接url来检查下一页上的注释 JSON页面底部“page”对象中的“next”字符串。
享受。

您可以通过此url使用get请求获取评论。。您将得到json响应

“StatusID”/comments?limit=500&access\u token=“accessToken”

StatusID=132343454_54346345 用户标识状态标识 accessToken=用户访问令牌

您将得到JSOn响应。获取所有详细信息,如评论用户、评论ID、消息。。。 您将得到JSON响应。解析它们。通过在中连接url来检查下一页上的注释 JSON页面底部“page”对象中的“next”字符串。
享受。

我尽量避免手动排序。您知道如何发送多查询fql命令吗?我尝试了{“query1”:“从post_id=“id”}的注释中选择id,但我一直得到:{“error”:{“message”:“(#601)解析器错误:在位置0处意外的“{”,键入“:“OAuthException”,“code”:601}”@TomA你可以在这里获得有关批处理的信息,这里还有一些信息,谢谢Neil,我只是用我的第一个想法来轮询所有评论,排序,并选择最新的评论。这并不理想,但Facebook的API似乎没有人们想象的那么灵活。@TomA你可以尝试用fql和order在描述时进行操作。e、 g.此示例获取ebay.com上留下的评论,并按相反顺序返回:
https://api.facebook.com/method/fql.query?query=SELECT post_fbid、fromid、object_id、text、object_id所在注释的时间(从link_stat WHERE url='1'中选择comments_fbidhttp://ebay.com')ORDER BY time DESC
我需要根据状态ID检索状态的注释。因此,如果我的状态ID为“1234567”,我将如何使用FQL进行此操作?谢谢。我正在尝试避免手动对它们进行排序。你知道如何发送多查询FQL命令吗?我尝试{“query1”:“从注释中选择ID,其中post_ID=“ID”}但我一直得到:{“error”:“message:”(#601)解析器错误:在位置0处出现意外的“{”,“type:“OAutheException”,“code”:601}@TomA你可以在这里获得有关批处理的信息,这里还有一些信息,谢谢Neil,我只是用我的第一个想法来轮询所有评论,排序,并选择最新的评论。这并不理想,但Facebook的API似乎没有人们想象的那么灵活。@TomA你可以尝试用fql和order在描述时进行操作。e、 g.此示例获取ebay.com上留下的评论,并按相反顺序返回: