2011-03-10 36 views
5

我正在嘗試使用最新的Facebook PHP SDK編寫應用程序。但是,我請求的任何擴展權限都不會被請求,它總是默認爲基本請求,並且不要求任何請求的擴展權限。PHP中的圖形API的擴展權限

這裏是我正在要求這些權限:

<?php 
require_once("facebook.php"); 

$app_id = "xxx"; 
$app_secret = "xxx"; 

$facebook = new Facebook(array(
    'appId' => $app_id, 
    'secret' => $app_secret, 
    'cookie' => true 
)); 

if(is_null($facebook->getUser())){ 
    $params = array(‘scope’ => ‘user_status,publish_stream,user_photos’);  
    header("Location:{$facebook->getLoginUrl($params)}"); 
    exit; 
} 
?> 

此文件是包含在上我的應用程序嵌入任何網頁的開頭。任何想法爲什麼我沒有得到我想要的擴展權限?

+1

請求參數不是'scope'而是'req_perm'嗎? – BrynJ 2011-03-10 08:43:40

+0

是的,現在是範圍。 – 2011-11-10 19:26:09

回答

6

確保您使用的是報價'。看起來你是從一個頁面或其他東西中複製這個例子。

if(is_null($facebook->getUser())){ 
    $params = array('req_perms' => 'user_status,publish_stream,user_photos'); 
    header("Location:{$facebook->getLoginUrl($params)}"); 
    exit; 
} 

UPDATE:使用scope代替req_perms與新的SDK。

+0

Durr。我遇到了一些問題,然後複製/粘貼了一些代碼以嘗試並消除我的錯誤。事實證明,這不是最好的協議。有時候,我只是看不到明顯的。謝謝! – 2011-03-10 14:16:22

+1

@CoreyLarson:發生在我們所有人身上我的朋友! :-) – ifaour 2011-03-10 14:21:08

0

您應該在逗號分隔的數組中通過'scope'參數。