, если вы используете facebooker2, который интегрирует Facebook Connect Вы, вероятно, нужно сделать это на стороне клиента. если я правильно понимаю, что 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
поддерживает следующие диалоги:
- friends.add
- stream.publish
- stream.share
- fbm.dialog
- bookmark.add
- profile.addtab
если Вы wan't опубликовать обновление статуса в корм непосредственно без фантазии 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);
}
});
UPDATE:
на самом деле Вы могли бы сделать все это на стороне сервера - я не заметил Mongli а, т первый - объединяет FB Open Graph API (facebooker2 камень зависит от него), образец действия контроллера:
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
@see facebooker2 пример на https://github.com/mmangino/facebooker2_fb_connect_example
Спасибо большое за Ваш ответ. Он делает именно то, на что я надеялся. У меня есть другой вопрос, не уверенный, можете ли вы также любезно помочь. Я это состояние гонки. Когда я вхожу в систему/выхожу из моего приложения, у меня нет проблем. Но как только я вхожу в систему из своего приложения и выходит из системы, используя facebook, я получаю эту ошибку: «Ошибка проверки маркера доступа». Я думаю, это связано с тем, что мое приложение все еще думает, что я вошел в систему, хотя я уже вышел из фейсбука. Мне было интересно, если у вас есть представление о том, как исправить эту проблему? – Jacky 2010-12-08 21:31:05