Utilisation de Facebook Graph pour simplement poster un message mural avec juste javascript

Dans Facebook Comment puis-je poster un message sur le mur d'un utilisateur disant" j'ai marqué 8/10 sur le jeu d'objets " puis une URL?

Je ne veux vraiment pas avoir à utiliser L'API complète, car je ne veux pas gérer les informations de connexion de l'utilisateur. Cela ne me dérange pas si Facebook a besoin de s'authentifier, puis de poster le message.

Est-il possible d'utiliser la nouvelle API Graph et JavaScript?

39
demandé sur Michael Currie 2010-04-28 00:44:39

3 réponses

Note 4/16/2011: flux.publish semble avoir été obsolète, il y a une nouvelle façon de le faire: http://developers.facebook.com/docs/reference/dialogs/feed/

Vous pouvez utiliser quelque chose comme cela pour les publier sur un mur, l'utilisateur devra confirmer avant d'être envoyé. N'oubliez pas que vous devrez utiliser FB.init et inclure le lien SDK JS.

 function fb_publish() {
     FB.ui(
       {
         method: 'stream.publish',
         message: 'Message here.',
         attachment: {
           name: 'Name here',
           caption: 'Caption here.',
           description: (
             'description here'
           ),
           href: 'url here'
         },
         action_links: [
           { text: 'Code', href: 'action url here' }
         ],
         user_prompt_message: 'Personal message here'
       },
       function(response) {
         if (response && response.post_id) {
           alert('Post was published.');
         } else {
           alert('Post was not published.');
         }
       }
     );  
  }
58
répondu Soufiane Hassou 2012-07-06 00:40:32

Poster sur le wall affichera une boîte de dialogue pour partager le message sur le mur ou pas. Mais je voulais poster le message en silence sur le mur de l'utilisateur, en supposant que l'utilisateur avait déjà donné l'autorisation "Post on wall".

FB.api('/me/feed', 'post', {
      message:'my_message',
      link:YOUR_SITE_URL,
      picture:picture_url
      name: 'Post name',
      description: 'description'
 },function(data) {
      console.log(data);
 });
12
répondu Nehal 2012-11-20 13:00:39

Étant donné que vous avez un proxy pour effectuer des appels inter-domaines, vous pouvez simplement le faire...

Dans cet exemple, YourProxyMethod prend une jQuery.ajax comme hash, fait un post côté serveur et renvoie la réponse dans les rappels de succès / erreur. Tout proxy régulier devrait faire.

L'astuce consiste à inclure app_id et access_token dans L'URL irself. En outre, votre application FB devrait avoir des autorisations suffisantes pour effectuer cet appel.

YourProxyMethod({
  url : "https://graph.facebook.com/ID/feed?app_id=APP_ID&access_token=ACCESS_TOKEN",
  method : "post",
  params : {
    message : "message",
    name : "name",
    caption : "caption",
    description  : "desc"
  },
  success : function(response) {
    console.log(response);
  },
  error : function(response) {
    console.log("Error!");
    console.log(response);
  }
});
3
répondu Mayank Jain 2011-10-05 15:53:32