[英]Getting Facebook friends gender
以下代碼為我提供了朋友的ID。 我想做的是得到朋友的性別,但沒有成功。 我可以使用生成的ID運行另一個循環,但是效率不高。 是否有一個查詢,將給出朋友的姓名和性別。 該應用程序的權限為friends_about_me。 這項許可足以使朋友獲得性別嗎?
<?php
$app_id = '******';
$app_secret = '*****';
$my_url = 'http://apps.facebook.com/****/';
$code = $_REQUEST["code"];
//auth user
if(empty($code)) {
$dialog_url = 'https://www.facebook.com/dialog/oauth?client_id='
. $app_id . '&redirect_uri=' . urlencode($my_url) ;
echo("<script>top.location.href='" . $dialog_url . "'</script>");
}
//get user access_token
$token_url = 'https://graph.facebook.com/oauth/access_token?client_id='
. $app_id . '&redirect_uri=' . urlencode($my_url)
. '&client_secret=' . $app_secret
. '&code=' . $code;
$access_token = file_get_contents($token_url);
// Run fql query
$fql_query_url = 'https://graph.facebook.com/'
. '/fql?q=SELECT+uid2+FROM+friend+WHERE+uid1=me()'
. '&' . $access_token;
$fql_query_result = file_get_contents($fql_query_url);
$fql_query_obj = json_decode($fql_query_result, true);
echo $fql_query_result;
您只需要一個FQL查詢即可獲取用戶朋友的性別信息:
SELECT uid, name, sex FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1 = me())
改編自Facebook Developers FQL主頁上的示例。
請注意,並非所有用戶都具有公開的性別,因此在編寫代碼時應考慮到這一點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.