我正在試驗Facebook的長時間訪問令牌,我發現長壽命的訪問令牌可用於不同的用戶。這是正常的嗎?Facebook長期訪問令牌是否可用於多個用戶?
我使用Facebook PHP SDK v3.2.2和Yii。這裏是我的代碼從App_User_1
Yii::import('application.vendors.facebook.Facebook');
$facebook = new Facebook(
array(
'appId' => Yii::app()->params['facebookApi'],
'secret' => Yii::app()->params['facebookSecretCode'],
'cookie' => true,
)
);
$loginUrl = $facebook->getLoginUrl(array('display' => 'touch', 'scope' => 'publish_actions'));
$fbUser = $facebook->getUser();
if(!empty($fbUser))
{
$facebook->setExtendedAccessToken(); //long-live access_token 60 days
$access_token = $facebook->getAccessToken();
exit(print_r($access_token));
}
產生長壽命的訪問令牌這裏是我的代碼來測試張貼到App_User_1
的Facebook牆上。
$message = "A message";
$link = "http://www.alink.com";
$picture = "http://www.alink/image.png";
$sendTo = "`**App_User_1**`";
$access_token = "xxxxxxxxxx";
Yii::import('application.vendors.facebook.Facebook');
$facebook = new Facebook(
array(
'appId' => Yii::app()->params['facebookApi'],
'secret' => Yii::app()->params['facebookSecretCode'],
'cookie' => true,
)
);
$attachment = array('message' => $message, 'link' => $link, 'picture' => $picture);
$api = "/$sendTo/feed/?access_token='.$access_token,";
$result = $facebook->api($api,'post', $attachment);
我有2個測試應用程序用戶。如果我替換App_User_1
的訪問令牌,我也可以發佈到App_User_2
的Facebook Wall。這是正常的嗎?
如果發佈您的意思是以app_user_1的用戶名發佈到app_user_2的牆上,那麼是的。 – 2013-04-28 14:42:44
嗨@JoachimIsaksson,糾正我,如果我錯了。但是,並不是每個用戶獨有的長期訪問令牌?謝謝。 – 2013-04-28 14:48:50
是的,但app_user_1可以發佈到app_user_2的牆上,如果他們是朋友的話。至少我的朋友每年都會在我的生日發帖;) – 2013-04-28 14:50:22