2016-01-06 9 views
2

Не уверен, что кто-либо другой столкнулся с аналогичной проблемой при использовании Facebook-PHP-SDK v5. Чтобы получить элементы профиля пользователя, такие как имя, имя_пользователя, last_name..etc. У меня есть следующий звонок.не может получить местоположение от пользователей facebook

public function getProfile(){ 

try { 

    $profile_request = $this->fb->get('/me?fields=name,first_name,last_name,email,gender,relationship_status, birthday, location'); 
    $profile = $profile_request->getGraphNode()->asArray(); 
    return $profile; 

} catch(Facebook\Exceptions\FacebookResponseException $e) { 
    // When Graph returns an error 
    echo 'Graph returned an error: ' . $e->getMessage(); 
    session_destroy(); 
    // redirecting user back to app login page 
    header("Location: ./"); 
    exit; 
} catch(Facebook\Exceptions\FacebookSDKException $e) { 
    // When validation fails or other local issues 
    echo 'Facebook SDK returned an error: ' . $e->getMessage(); 
    exit; 
} 

это вызывается в моей странице index.php следующим образом:

$profile = $fblink->getProfile(); 
print_r($profile); 

Теперь странно это, все данные пользователей печатаются для размещения пользователей за исключением. Я проверил свое разрешение в своем приложении, и Users_location был включен. Я не получаю ошибку любого типа, поэтому я не могу найти причину, почему это не возвращается.

Если кто-то знает, как легко обходным путем вернуть места, это было бы очень полезно. Или, если кто-то может пролить свет, почему места не возвращаются, это было бы столь же полезно. Спасибо

ответ

1

Возможно, пользователь в вашем примере не установил местоположение. В качестве альтернативы, ваше приложение явно запрашивает у Пользователя привилегии для доступа к местоположению? Если это не так, я считаю, что facebook ограничивает определенную информацию, которую вы можете собрать, чтобы избежать последствий конфиденциальности. В результате вам нужно будет настроить приложение на facebook, а затем, когда пользователь зайдет на ваш сайт, явным образом запрошу доступ к определенной информации, такой как местоположение и т. Д.

Вот ссылка на разрешения, которые вы можете запрос через функцию входа в систему: https://developers.facebook.com/docs/facebook-login/permissions Как запросить разрешения: https://developers.facebook.com/docs/facebook-login/permissions/requesting-and-revoking

Смежные вопросы