从Facebook标签发布到用户墙

时间:2011-10-12 01:16:52

标签: facebook permissions tabs

如何从Facebook标签中提示用户提供流发布和电子邮件权限?我找到的所有内容都不会让我重定向回我在iframe或facebook标签页面中加载的当前页面。我尝试过的所有内容都给了我一般的Facebook错误。

需要注意的一点是,我没有从选项卡iframe中加载的初始页面请求权限。我有一个表单正在填写并提交,将iframe重定向到另一个页面,在第二页上我需要请求权限。这样做的原因是我希望在可能吓跑用户之前填写表单,因为他们不想允许权限。

如果我可以将帖子弹出到您的墙盒并让用户单击提交按钮,这可能会更简单。这种方式不需要提前正确的权限吗?这样做的代码是什么?

1 个答案:

答案 0 :(得分:0)

您可以使用Feed dialog

<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:fb="https://www.facebook.com/2008/fbml">
  <head>
    <title>My Feed Dialog Page</title>
  </head>
  <body>
    <div id='fb-root'></div>
    <script src='http://connect.facebook.net/en_US/all.js'></script>
    <p><a onclick='postToFeed(); return false;'>Post to Feed</a></p>
    <p id='msg'></p>

    <script> 
      FB.init({appId: "YOUR_APP_ID", status: true, cookie: true});

      function postToFeed() {

        // calling the API ...
        var obj = {
          method: 'feed',
          link: 'https://developers.facebook.com/docs/reference/dialogs/',
          picture: 'http://fbrell.com/f8.jpg',
          name: 'Facebook Dialogs',
          caption: 'Reference Documentation',
          description: 'Using Dialogs to interact with users.'
        };

        function callback(response) {
          document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
        }

        FB.ui(obj, callback);
      }

    </script>
  </body>
</html>

在页面标签页面中效果很好。