Rails,Koala& Facebook - 将图像发布到墙上并跟踪计数

时间:2012-06-18 12:02:28

标签: ruby-on-rails facebook ruby-on-rails-3 facebook-graph-api koala

我正在开发一个与Facebook密切沟通的rails应用程序。 这个概念是用户可以上传图像,并且会有一种带有这些图像缩略图的图库和一个“相似计数”指示符。 我正在使用koala gem。

我成功地将图像发布到我的墙上:

  if current_user && session[:fb_token]
    @user_graph = Koala::Facebook::API.new(session[:fb_token])
  end
  @user_graph.put_picture(@post.photo.url)

在我的_post.html.erb我做了类似的事情:

<div class="fb-like left_float" data-href="<%= post.photo.url %>" data-send="false" data-layout="button_count" data-width="170" data-show-faces="false" data-font="segoe ui"></div>

如果我只是从facebook中包含这个html片段,我没有得到正确的结果,因为这指向相同的上传图片但不是之前创建的帖子。我想我之前创建的Facebook帖子需要某种post_id吗?

有什么想法吗?

更新

put_picture方法返回以下内容:

id: '109668002508542'
post_id: '100003960282996_109668032508539'

但是当我使用http://graph.facebook.com/109668002508542

检查这些ID时
@user_graph.get_object('109668002508542')

我得不到任何信息,没有喜欢,只有'假'

1 个答案:

答案 0 :(得分:1)

那么,您是否希望了解您上传的照片的相似数量?你不应该使用类似的按钮。您可以使用get_connections方法检索页面的喜欢数量。尝试像

这样的东西
<div>
  <%= @user_graph.get_connections(@the_post_id_from_put_picture, "likes") likes
</div>

请务必确保您具有访问对象的正确权限。使用考拉https://github.com/arsduo/koala/wiki/OAuth

中的OAuth流检查您的权限