2010-09-04 37 views
0

我fabrook在PHP代码连接像为什么连接Facebook应用程序返回的混淆网址

$facebook = new Facebook(array('appId' => FACEBOOK_APP_ID, 'secret' => FACEBOOK_SECRET, 'cookie' => true)); 
$session = $facebook->getSession(); 

$loginUrl = $facebook->getLoginUrl(
      array(
      'canvas' => 1, 
      'fbconnect' => 0, 
      'req_perms' => 'email,read_stream,publish_stream,offline_access', 
    'next' => 'http://apps.facebook.com/appname/') 
); 

if (!$session) { 
     echo "<script type='text/javascript'>top.location.href = '$loginUrl';</script>"; 
     exit; 
    } 

当用户访问过我的应用程序重定向至Facebook页面的权限。该用户必须单击允许接受许可请求。

当用户允许,我的应用程序返回森达混淆URL如

http://apps.facebook.com/appname/?perms=email%2Cread_stream%2Cpublish_stream%2Coffline_access&selected_profiles=1756044141&installed=1&session= {%22session_key%22%d221b6f2-1756044141%22%2C%22uid%22%3A%221756044141%22%2C%22expires %22%3A0%2C%22secret%22%5ffd193f40cc1c3acd%22%2C%22base_domain%22%3A%22muslimsquare.com%22%2C%22access_token%22%3A%22148835711801079 | bdf70ed30-1756044141 |。wvq6bAErEPdDxMZ%22%2C% 22sig%22%3A%22478a31ffc9dcc55daa19aa0d72}

代替

http://apps.facebook.com/appname/

我怎样才能修复它的Facebook返回干净的URL(http://apps.facebook.com/appname/

回答

0

这是因为Facebook增加了会话,应用程序ID和更多的信息,默认情况下的URL。然而,你可以像这样解码url:

urldecode($url); 
+0

其中我通过'urldecode($ url);'以及我如何获得$ url; – Giffary 2010-09-04 12:11:32

+0

@Giffary:当我调用urldecode($ url)时,您可以通过'$ _SERVER ['REQUEST_URI']' – Sarfraz 2010-09-04 12:31:12

+0

@@ Sarfraz获取当前网址; ?请给我一个想法。 – Giffary 2010-09-04 12:45:38

相关问题