2011-05-20 95 views
1

获取用户名我发现使用的file_get_contents像Facebook应用程序使用PHP API

json_decode(的file_get_contents(的“http://graphdotfacebookdotcom/'.$uid));

会使我的应用程序加载非常缓慢,有没有任何方法来检索Facebook用户的用户名?

谢谢

回答

1

为什么不使用Facebook PHP SDK获取详细信息。 您也可以在不花费时间的情况下获得其他基本信息。

+0

什么会与PHP SDK是否会改变?它应该工作得更快吗?很明显不是。 – zerkms 2011-05-20 03:42:25

+0

你是对的,我们转移了这个问题。速度取决于Facebook的响应 – AjayR 2011-05-20 08:59:30

2

您可以使用facebook sdk来做到这一点。

$session = $facebook->getSession(); 

$me = null; 
// Session based API call. 
if ($session) { 
    try { 
    $uid = $facebook->getUser(); 
    $me = $facebook->api('/me'); 
    } catch (FacebookApiException $e) { 
    error_log($e); 
    } 
} 

要查看完整的例子​​

+0

我不知道为什么我不能使用getSession(); – phpNewbie 2011-05-20 05:44:19

+0

这应该如何帮助主要问题“会使我的应用程序非常缓慢加载”?通过神奇加速互联网,PHP sdk工作吗? – zerkms 2011-05-20 06:28:54

+0

@zerkms你是对的。它不会加快应用程序。 – Shameer 2011-05-20 06:49:24

2
$facebook = new Facebook(array(
'appId' => $APIappId, 
'secret' => $APIsecret, 
'cookie' => true 
)); 
$facebook->api('/'.$uid); 

不要忘了包括facebook.php顶部

0

号有没有办法来加速这一过程。

1

您可以通过请求更少的信息,像这样(在PHP)加快这:

$me = $fb->api('me', array('fields' => 'username')); 
$username = (isset($me['username'])) ? $me['username'] : ''; 

,并在JS SDK像这样:

FB.api('me', {fields: 'username'}, function() { console.log(arguments); }); 
相关问题