2010-12-08 21 views
0

Donc j'utilise facebooker2 plugin pour faire facebook connect. J'ai été capable d'extraire des informations sur un utilisateur, mais voici ce que j'ai lutté avec ...ruby ​​on rails: Comment utiliser facebooker2 pour réaliser wallpost sur mon mur ou sur le mur de mes amis?

Je ne sais pas comment poster quelque chose sur mon mur ou les murs de mes amis .. Je sais que dans facebooker, vous pouvez appeler la méthode publish_to et elle fera le travail. Mais il semble que facebooker2 est un peu moins documenté que j'ai regardé partout sur google ..

Je me demandais si un expert qui pourrait aider sur celui-ci?

Merci beaucoup

Répondre

3

si vous utilisez facebooker2 qui intègre Facebook Connect Vous aurez probablement besoin de le faire sur le côté client. Si je comprends bien, facebooker2 ne fournit aucune API côté serveur.

ainsi charger le SDK JavaScript (doit être chargé si vous avez connecté avec succès) et aller de l'avant l'affichage des statuts avec l'interface utilisateur Facebook intégré:

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 prend en charge les boîtes de dialogue suivantes:

  • amis.add
  • flux.publier
  • stream.share
  • fbm.dialog
  • bookmark.add
  • profile.addtab

si vous wan't de publier une mise à jour d'état à l'alimentation directement sans l'interface utilisateur de fantaisie utiliser la fonction 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); 
    } 
}); 

MISE à JOUR:

fait que vous pourriez faire tout ce côté serveur - je ne l'ai pas remarqué un Mongli t premier - FB intègre Open Graph API (petit bijou facebooker2 dépend), l'échantillon action du contrôleur:

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 exemple à https://github.com/mmangino/facebooker2_fb_connect_example

+0

Merci beaucoup pour votre réponse. Il fait exactement ce que j'espérais. J'ai une autre question, je ne sais pas si vous pourriez bien nous aider. J'ai cette condition de course. Lorsque je me connecte/déconnecte directement de mon application, je n'ai aucun problème. Mais dès que je me connecte depuis mon application et que je me déconnecte en utilisant facebook, j'obtiens cette erreur "Erreur de validation du jeton d'accès". Je pense que c'est parce que mon application pense toujours que je suis connecté même si je me suis déjà déconnecté de facebook. Je me demandais si vous avez un aperçu sur la façon de résoudre ce problème? – Jacky

+0

@Jacky Eh bien, j'ai peur que je ne peux pas vous aider avec cela sans voir votre code. il me semble que vous devriez avoir un filtre avant dans votre contrôleur qui valide le jeton d'accès et s'il est invalide réinitialise connect (ou redirige vers facebook login - tout ce que vous attendez dans un tel cas) ...Peut-être que vous devriez poster une autre question avec votre code et le comportement attendu et quelqu'un espère vous aider. – kares