2010-03-08 59 views
0

我正在使用rfacebook gem与facebook连接进行交互。我在上传图片时遇到问题。正如facebook api所说,数据应该像json对象一样在一个散列中传输。所以我在做一个哈希rfacebook和facebook图片上传api

publish_values = { 
    :uid => @post.profile.channel_uid, 
    :message => @post.content, 
    :auto_publish => true, 
} 

unless @post.message.skip_link_info 
publish_values[:attachment] = {} 
publish_values[:attachment][:name] = @post.message.link_title unless @post.message.link_title.blank? 
publish_values[:attachment][:caption] = @post.message.link_title unless @post.message.link_title.blank? 
publish_values[:attachment][:description] = @post.message.link_description unless @post.message.link_description.blank? 
unless @post.message.no_thumbnail || @post.message.link_image_url.blank? 
publish_values[:attachment][:media] = [{ :type => 'image', :src => @post.message.link_image_url, :href => @post.short_uri }] 
    end 
end 

,但它没有上传任何图片到Facebook而言,XML respons说“属性必须是一个字典”。所以我被困在这里几天它不会让任何sene

回答

0

我的理解是,rFacebook不再积极支持和facebooker是Ruby> Facebook的选择库。可能会找到更好的支持......

0

正如托比提到的,你应该强烈考虑切换到Facebooker。 rFacebook长久以来一直没有积极发展。

但是我相信在你的例子中错误的原因是你缺少'属性'字段。

这里是流文件发布: http://wiki.developers.facebook.com/index.php/Attachment_%28Streams%29

正如你所看到的,所需要的价值观之一是“属性”哈希值。

你可能会需要像这样的行添加到您的代码(或空或包含每个文档的相应值):

publish_values[:attachment][:properties] = { } 

祝你好运!