更新更清晰(希望:)):
与此页面相关,特别是SSO部分:http://developers.facebook.com/docs/authentication/
你有Facebook选择使用Facebook连接按钮(无论连接意味着现在Facebook对我来说是灰色的雾),或者只是将你自己的图像作为按钮滚动,然后点击调用FB.Login().
所以我尝试了facebook按钮路线,这将我带到一个完整的砖墙.我的意思是我可以让它工作,auth,登录,所有这些但我不知道如何使用按钮通过整个过程传递扩展权限:
window.fbAsyncInit = function () {
FB.init({ appId: facebookApplicationID, status: true, cookie: true, xfbml: true });
FB.Event.subscribe('auth.sessionChange', function (response) {
...rest of code
Run Code Online (Sandbox Code Playgroud)
好的,如何为此调用附加扩展权限?当然,如果使用Login(),你可以很容易地做到这一点,但为什么facebook不显示任何例子,或说明perms参数是否存在于使用该按钮的过程中的某个位置!
相关链接:http://forum.developers.facebook.com/viewtopic.php?pid = 248096#p248096
我甚至不知道为什么他们在这里有那个按钮,当我看起来像大多数人只是在Init中调用Login()时.我假设然后调用Login()仍然在cookie等方面管理SSO?
是否有人使用此按钮或你只是使用FB.Login()?
我在我们自己的托管网站上的iframe中运行这个...没有将代码嵌入到facebook网站本身(我相信它被称为canvas?).
Anu*_*rag 11
RTFM.是的,我的意思是友善.
该Single Sign-on部分正下方是该Account Registration Data部分,我从那里复制粘贴.
<fb:login-button perms="email,user_birthday"></fb:login-button>
Run Code Online (Sandbox Code Playgroud)
不确定你要在这里完成什么.如果你想获得有关你的用户的信息或代表他们在Facebook上采取行动,你需要用户告诉Facebook它可以这样做(这只需要发生一次),这就是你需要调用FB.login作为这里描述:http://developers.facebook.com/docs/reference/javascript/FB.login.
FB.login(function(response) {
if (response.session) {
if (response.perms) {
// user is logged in and granted some permissions.
// perms is a comma separated list of granted permissions
} else {
// user is logged in, but did not grant any permissions
}
} else {
// user is not logged in
}
}, {perms:'read_stream,publish_stream,offline_access'});
Run Code Online (Sandbox Code Playgroud)
他们需要输入密码才能证明他们真正授权您的应用.如果需要扩展权限,FB.login中的第二个参数允许您执行此操作.
如果用户已登录到Facebook(例如在另一个选项卡中),则无需登录,应跳过登录屏幕.如果用户已登录已经授权您的应用程序,则无需调用FB.login.
在决定是否调用FB.login之前,请使用FB.getLoginStatus 检查用户的登录状态(和权限):http://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus.
| 归档时间: |
|
| 查看次数: |
8568 次 |
| 最近记录: |