所以我正在使用 facebooker2 插件来进行 facebook 连接。我能够提取有关用户的信息,但这就是我一直在努力解决的问题...
我不知道如何在我的墙上或我朋友的墙上发布一些东西。我知道在 facebooker 中,您可以调用方法 publish_to,它会完成这项工作。但是当我在谷歌上查看时,facebooker2 的记录似乎有点少。
我想知道是否有任何专家可以帮助解决这个问题?
非常感谢
所以我正在使用 facebooker2 插件来进行 facebook 连接。我能够提取有关用户的信息,但这就是我一直在努力解决的问题...
我不知道如何在我的墙上或我朋友的墙上发布一些东西。我知道在 facebooker 中,您可以调用方法 publish_to,它会完成这项工作。但是当我在谷歌上查看时,facebooker2 的记录似乎有点少。
我想知道是否有任何专家可以帮助解决这个问题?
非常感谢
如果您使用集成了 Facebook Connect 的 facebooker2,您可能需要在客户端执行此操作。如果我理解正确,facebooker2 不提供任何服务器端 API。
因此加载 JavaScript SDK(如果您已成功连接,则应加载)并继续使用集成的 Facebook UI 发布状态:
FB.ui({
method: 'stream.publish',
attachment: {
name: 'JSSDK',
caption: 'The Facebook JavaScript SDK',
description: (
'A small JavaScript library that allows you to harness ' +
'the power of Facebook, bringing the user\'s identity, ' +
'social graph and distribution power to your site.'
)
}
},
function(response) {
if (response && response.post_id) {
alert('Post was published.');
} else {
alert('Post was not published.');
}
}
);
FB.ui
支持以下对话框:
如果您不想在没有精美 UI 的情况下直接向提要发布状态更新,请使用以下FB.api
功能:
var body = 'Reading Connect JS documentation';
FB.api('/me/feed', 'post', { message: body }, function(response) {
if (!response || response.error) {
alert('Error occured');
} else {
alert('Post ID: ' + response.id);
}
});
更新:
实际上你可以做所有这些服务器端 - 我一开始没有注意到 Mongli - 集成了 FB Open Graph API(facebooker2 gem 依赖于它),示例控制器操作:
def create
note = current_user.sent_notes.create!(params[:note])
flash[:notice] = "Note sent to #{note.recipient.email}"
if current_facebook_user
current_facebook_user.fetch
current_facebook_user.feed_create(
Mogli::Post.new(:name => "#{current_facebook_user.name} sent a note using notes!",
:link=>note_url(note),
:description=>truncate(note.body,:length=>100)))
end
redirect_to notes_path
end
@see Mogli 在https://github.com/mmangino/mogli
@参见https://github.com/mmangino/facebooker2_fb_connect_example上的 facebooker2 示例