[英]Facebook Graph API + Facebook Pages
使用Facebook的Graph API,給定用戶名xyz(假設他們已經對我的網站進行了身份驗證),如何獲取用戶管理的所有Facebook頁面的列表?
user
對象上的accounts
屬性表示:
當前用戶擁有的Facebook頁面。 如果已授予manage_pages權限,則此連接還會生成access_tokens,可用於代表頁面查詢Graph API。
獲取訪問令牌后,您可以獲取用戶管理的所有Facebook頁面列表的所有詳細信息。
https://graph.facebook.com/[FACEBOOKUSERID]?metadata=1&access_token=
輸出看起來像
{
"name": "Facebook Developer Garage Austin - SXSW Edition",
"metadata": {
"connections": {
"feed": "http://graph.facebook.com/331218348435/feed",
"picture": "https://graph.facebook.com/331218348435/picture",
"invited": "https://graph.facebook.com/331218348435/invited",
"attending": "https://graph.facebook.com/331218348435/attending",
"maybe": "https://graph.facebook.com/331218348435/maybe",
"noreply": "https://graph.facebook.com/331218348435/noreply",
"declined": "https://graph.facebook.com/331218348435/declined"
}
}
}
使用fql查詢! 這是獲取用戶管理員頁面的最佳方式。 您還可以限制名稱。 即具有空名稱的頁面示例fql查詢,它還為您提供頁面詳細信息。
SELECT page_id,page_url,name,pic_square FROM page WHERE page_id IN (SELECT page_id FROM page_admin WHERE uid = " + **UserId** + ") and name!=''
UserId - 管理員的ID
注意此方法不適用於圖api的2.1版本,因為從該版本開始不推薦使用fql
我找到了答案,你需要使用FQL,傳入適當的access_token:
這是我使用的。 它完美無缺
$pages = $facebook->api(array('method' => 'fql.query','query' => 'SELECT page_id FROM page_admin WHERE uid = '.$uid.''));
foreach($pages as $k=>$v) {
echo 'page id#:'.$v['page_id'].'<br/>';
}
這當然是在為fb用戶創建會話之后! $uid
將是您返回托管頁面列表的特定Facebook用戶的個人資料ID#。
@rmorrison - 這不是圖API。 使用新的“喜歡”添加,您可以使用此URL:h ttps://graph.facebook.com/me/likes?access_token = blah! 或者https://graph.facebook.com/USER_ID/likes?access_token = blah!
您可以從簡單的Facebook Graph API Hit獲取頁面列表。
https://graph.facebook.com/{user-id}/accounts?access_token={access-token}
它將為用戶創建的頁面列表。
Fql是獲取他是管理員的用戶頁面的最佳方式。 像其他人一樣喜歡用戶會給出用戶喜歡的所有頁面。
access_token有效期為一小時或更短。 為了獲得細節,有人應該怎么做。 我試圖得到結果
這工作了一個小時左右但是如何在一小時后得到結果......無需登錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.