2010-02-23 160 views
1

即时通讯facebook facebook iframe应用程序与cakephp。 我的问题是我需要facebook授权很快用户访问主页。 我把这个代码$ user = $ this-> facebook-> require_login();在过滤方法之前的app_controller中,似乎它与用户授权一起工作。授权Facebook(需要登录)与cakephp导致循环授权密钥会话

但用户授权后,我的应用程序将离开Facebook的框架,进入到正常页面(未里面Facebook),我看到了这个地址栏“的auth_token = f754dc2ed39b5e2b93f11a6e648f1517 &安装= 1”。

然后当我点击链接到我的应用程序中的另一个页面似乎auth_token键正在地址栏上循环。

我该如何解决这个问题? 感谢

回答

0

您可以重定向回调到设置为处理Facebook的授权回调,并用它来记录用户的,然后将其重定向到网站上的适当位置(如承包商,客人页)的特定页面

1

你可以这样做:

public function beforeFilter() { 

     $this->fbsession = $this->facebook->getSession();  
     $this->me = null; 

     // Session based API call. 
     if ($this->fbsession) { 
      try { 
       $this->uid = $this->facebook->getUser(); 
       $this->me = $this->facebook->api ('/me'); 
      } catch (FacebookApiException $e) { 
       error_log ($e); 
      } 
     } else { 
      $this->layout = 'login'; 
      $this->viewPath = 'pages'; 
      $this->render('login'); 
     } 
} 

如果用户没有的loggedIn到Facebook和/或您的应用程序不能访问,他是重定向到/views/pages/login.ctp视图。这就是你把你的代码用于登录的地方(就像在sdk示例中一样)。