0

我现在正在学习 javascript 和 Facebook API,我正在尝试显示用户新闻源。我知道我需要使用的查询,但我不知道如何使用 javascript 显示结果。这是我的查询

SELECT post_id, actor_id, target_id, message FROM stream WHERE filter_key in (SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed') AND is_hidden = 0

我很确定显示每个结果的 forEach 循环是我需要做的,但我将如何使用新闻源发布信息填充每个结果?

编辑

好的,这是我正确接收查询结果的新代码。不幸的是,结果只是没有显示出来。

<script>
               
function showPosts() {
    FB.api("/fql?q="+encodeURIComponent("SELECT post_id, actor_id, target_id, message FROM stream WHERE filter_key in (SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed') AND is_hidden = 0"), function(response, post_id, actor_id, message) {
    
    console.log(response);
  
    var posts = response.data
    var postId = post_id.data;
    var message = message.data;
  
    for (var i=0; i < posts.length && i < 25; i++) {
      var post = posts[i];
      
     markup += '<div>' + post.postId + post.message + '<div/>';
  }
  
    document.getElementById('newsfeedposts').innerHTML = markup;
  
});
  
</script>
4

2 回答 2

1

通过 FB.api 执行查询,并处理您将在回调函数中返回的数据。

FB.api("/fql?q="+encodeURIComponent("SELECT ..."), function(response) {
  console.log(response);
})

在 Firefox 中执行它,查看 Firebug 控制台,您应该了解响应是如何构建的。

于 2012-06-05T15:18:06.823 回答
0
FB.api(

     'fql',


     {'q' : "SELECT url, like_count FROM link_stat WHERE url='http://stackoverflow.com/';"},


     function (response){
          console.log(JSON.stringify(response));
     }

);
于 2014-03-07T05:00:48.820 回答