2011-05-20 74 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); }); 
相關問題