从facebook选项卡发布到用户墙
如何从facebook选项卡提示用户获取流发布和电子邮件权限?我找到的所有内容都不会让我重定向回iframe中加载的当前页面或facebook选项卡url。我尝试过的每件事都让我犯了一个普遍的Facebook错误 需要注意的一点是,我并没有从tabs iframe中加载的初始页面请求权限。我正在填写并提交一个表单,该表单将iframe重定向到另一个页面,在第二个页面上,我需要请求权限。原因是我希望在可能吓跑用户之前填写表单,因为他们不想允许权限 如果我可以弹出“张贴到您的墙框”并让用户单击“提交”按钮,可能会更简单。这种方式不需要事先获得权限,对吗?这样做的代码是什么?您可以使用:从facebook选项卡发布到用户墙,facebook,permissions,tabs,Facebook,Permissions,Tabs,如何从facebook选项卡提示用户获取流发布和电子邮件权限?我找到的所有内容都不会让我重定向回iframe中加载的当前页面或facebook选项卡url。我尝试过的每件事都让我犯了一个普遍的Facebook错误 需要注意的一点是,我并没有从tabs iframe中加载的初始页面请求权限。我正在填写并提交一个表单,该表单将iframe重定向到另一个页面,在第二个页面上,我需要请求权限。原因是我希望在可能吓跑用户之前填写表单,因为他们不想允许权限 如果我可以弹出“张贴到您的墙框”并让用户单击“提交
我的提要对话框页面
投递
init({appId:“您的应用程序ID”,状态:true,cookie:true});
函数postToFeed(){
//正在调用API。。。
var obj={
方法:“提要”,
链接:'https://developers.facebook.com/docs/reference/dialogs/',
图片:'http://fbrell.com/f8.jpg',
名称:“Facebook对话”,
标题:“参考文档”,
描述:“使用对话框与用户交互。”
};
函数回调(响应){
document.getElementById('msg').innerHTML=“Post ID:”+response['Post_ID'];
}
FB.ui(obj,回调);
}
它在页面选项卡中运行良好。我只需在每页初始化FB类一次,对吗?换句话说,我已经在FB.init页面上有了这个({appId:“YOUR_APP_ID”,status:true,cookie:true});所以我可以把它从对话框代码中去掉,对吗?或者每次初始化一个新的时我都必须包含这个吗?我终于找到了问题所在。在创建应用程序时进行新更改之前,您刚刚创建了应用程序。现在您可以选择应用程序、选项卡、网站、android等。。如果yopu仅选择选项卡设置,则使用任何FB API都会出现错误。您还必须选择应用程序设置。
<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>