Facebook FQL:如何在comment social plugin中检索与其他提供商登录的comment用户的用户名/名称?

Facebook FQL:如何在comment social plugin中检索与其他提供商登录的comment用户的用户名/名称?,facebook,facebook-fql,facebook-comments,Facebook,Facebook Fql,Facebook Comments,我刚刚建立了一个很好的方法,通过FB的Comment Social插件,使用PHP和OpenGraph/FQL请求(我没有使用Facebook SDK)获取我网站上的评论 我需要它在相对的iOS应用程序中显示评论。实际上,这个方法检索所有的评论,如果有相关的答案,以及发表评论的用户的用户名/pic 这个问题来自与另一个提供者签署的用户的评论。FQL结果为: "fromid": XXXXXXXXXXXXXXX, //first ID, usually is uid in "u

我刚刚建立了一个很好的方法,通过FB的Comment Social插件,使用PHP和OpenGraph/FQL请求(我没有使用Facebook SDK)获取我网站上的评论

我需要它在相对的iOS应用程序中显示评论。实际上,这个方法检索所有的评论,如果有相关的答案,以及发表评论的用户的用户名/pic

这个问题来自与另一个提供者签署的用户的评论。FQL结果为:

  "fromid": XXXXXXXXXXXXXXX,          //first ID, usually is uid in "user" table
  "text": "comment text", 
  "time": 1345979042, 
  "comments": {
    "data": [
      {
        "id": "YYYYYYYYYYYYYYYYYY",   //not relevant, URL id
        "from": {
          "name": "externaluser", 
          "id": ZZZZZZZZZZZZZZZ      //another ID, usually uid too, different from XXXXX 
        }, 
        "message": "test reply", 
        "created_time": 1345979528
      }
    ], 
    "count": 1
  }
该结果正确地给出了注释文本,但ID不在用户表中。“reply”正确地返回了名称“externaluser”,但我在查询FQL表的任何地方都找不到它

我确信这个外部用户存储在Facebook数据库的某个地方!有人能告诉我检索用户数据的正确关系吗


谢谢。

您可以尝试以下FQL:

SELECT id, name, username FROM user WHERE third_party_id = ZZZZZZZZZZZZZZZ

如果这不能让您找到用户,那么我认为您无法从FB服务器获得详细信息。

我们遇到了相同的问题,最终找到了一个FQL查询,该查询为我们提供了发表评论的人的姓名。当从流中提取数据时,实际上我们需要两组名称,发布到流中的人的名称和评论者的名称。需要三重查询来获取数据。这是一个相当大的查询,因此我将其缩减为仅相关字段

{"q1":"SELECT source_id, likes, comments, actor_id,  post_id FROM stream WHERE filter_key IN ( SELECT filter_key FROM stream_filter WHERE uid = me())",
 "q2":"SELECT id, username, name FROM profile WHERE id IN (SELECT actor_id FROM #q1)",
 "q3":"SELECT id,name,username FROM profile WHERE id IN (SELECT fromid FROM comment WHERE post_id IN (SELECT post_id FROM #q1))"}
查询1提供流中的项目。 查询2为您提供发布到流的人员的信息。您需要从q1中的参与者id到q1中的id进行交叉引用。 查询3为您提供了对q1中返回的任何内容发表评论的人员的信息。您需要从q1.comments.comment\u列表中的formid到q1中的id进行交叉引用


希望这能有所帮助。

是的,我在看文档,我看到了“第三方id”,但运气不好。对其进行查询不会返回任何结果。奇怪的是,我上面的查询返回两个不同的id,一个用于注释(“fromid”),另一个用于答案(“from”->“id”)。两人都一无所获。。如果我用图形浏览器尝试它们,它会显示“错误请求”。马。