Facebook应用认证工作流程

时间:2011-12-14 11:18:44

标签: facebook facebook-graph-api

我希望能够实现这样的工作流程。

  • 浏览Facebook Canvas页面网址: http://apps.facebook.com/app_name/
  • 如果用户已经允许Facebook应用或用户,则将用户重定向到应用页面 如果没有将用户重新启动到Facebook边的对话框(这是 我需要得到什么)

Need to get this 但现在我得到了这个。

  • 浏览Facebook Canvas页面网址:    http://apps.facebook.com/app_name/
  • 如果用户已经允许Facebook应用程序或者如果没有将用户重新定向到侧面Facebook中的后续对话框,则将用户重定向到应用页面(这就是我现在得到的) I am getting this-first I am getting this-then second 任何人都可以建议一种方法来实现预期的身份验证工作流程,而不是我现在得到的。

这是我现在正在使用的js代码,

if (response.authResponse) {
                FB.api( '/me', function( info ) {
                    //ENS.fbConnect(0, response.authResponse.accessToken);
                    login( response, info );
                });


            } else{
                //redirctURL= encodeURI('http://apps.facebook.com/app_name');
                redirctURL= encodeURI('http://my_site_url.com');
                top.location.href = "http://www.facebook.com/dialog/oauth?client_id="+fbAppID+"&redirect_uri="+redirctURL+"&scope=offline_access,email,user_birthday,status_update,publish_stream,user_about_me, user_notes";
            }

以上代码其他部分工作,当用户未根据我在第二点提到的应用程序进行身份验证时。

实际上我需要将用户重定向回http://apps.facebook.com/app_name而不是http://my_site_url.com。但是,当我使用http://apps.facebook.com/app_name作为“redirctURL”时,我的身份验证工作流程给了我以下错误。

enter image description here 请求帮助我解决上面描述的休闲问题

  1. 工作流程问题
  2. 重定向问题

2 个答案:

答案 0 :(得分:0)

所以,如果我理解你的问题:

1)你想要像华盛顿邮政应用程序一样的auth对话框 - 您可以在应用程序设置中启用增强的身份验证对话框,但除非您还定义了打开的图形操作和对象(这是测试版API的一部分),否则它将是一个小得多的对话框,因为您没有任何时间轴单位< / p>

2)您确定要重定向到正确的网址吗?如果您尝试重定向到应用程序自己的URL以外的URL

,通常会发生该错误

答案 1 :(得分:0)

你的app url缺少结尾斜杠

http://apps.facebook.com/app_name

应该是

http://apps.facebook.com/app_name/