Instagram ПОЛУЧАЕТ /пользователи/идентификатор пользователя, не возвращающий никаких данных?
Я пытаюсь отобразить количество подписчиков моей учетной записи на моей странице php и по какой-то причине, когда я пытаюсь использовать https://api.instagram.com/v1/users /{$идентификатор пользователя}/следует?access_token={$accessToken} Строка fetchData, я не получаю никакой информации.
<?php
$userinfo = fetchData("https://api.instagram.com/v1/users/{$userid}/follows?access_token={$accessToken}");
$userinfo = json_decode($userinfo);
foreach($userinfo->data as $profile) {
$followers = $profile->counts->follow_by;
echo "Followed by: ".$followers;
}
?>
Но если я использую один и тот же код с другой командой конечной точки и вызываю разные данные, это отлично работает (как показано ниже)
<?php
$userinfo = fetchData("https://api.instagram.com/v1/users/self/feed?access_token={$accessToken}");
$userinfo = json_decode($userinfo);
foreach($userinfo->data as $profile) {
$followers = $profile->likes->count;
echo "Followed by: ".$followers;
}
?>
Есть идеи, что я могу делать неправильно?
Спасибо
2 answers
Конечная точка users/{userid}/follows
не вернет никаких данных из вашего профиля. Он возвращает только массив профилей пользователей, которым вы следуете .
Самый быстрый способ получить доступ к количеству подписчиков - использовать конечную точку users/{userid}
:
$userinfo = fetchData("https://api.instagram.com/v1/users/YOUR_USER_ID?access_token=YOUR_ACCESS_TOKEN");
$userinfo = json_decode($userinfo);
$followers = $userinfo['data']['counts']['followed_by'];
echo "Folled by: " . $followers . " people";
Кроме того, для дальнейшего использования я настоятельно рекомендую вам протестировать свои звонки с помощью Консоли API Instagram. Таким образом, вы можете видеть, какие данные возвращаются после каждого вызова, чтобы иметь к ним правильный доступ.
Я знаю, что это старый вопрос, но он может помочь кому-то еще.
$api_key = 'YOR_API_KEY';
$user_id = 'XXX';
$data = @file_get_contents("https://api.instagram.com/v1/users/$user_id/?client_id=$api_key");
$data = json_decode($data, true);
echo $data['data']['counts']['followed_by'];
//echo '<pre/>';
//print_r($data);
Для этого не требуется токен доступа, его единственный требуемый ключ API. Если вы не можете получить идентификатор пользователя пользователя, но вы знаете его/ее имя, просто перейдите на страницу и просто просмотрите изображение профиля в браузере, вы узнаете идентификатор пользователя оттуда.
Я надеюсь, что это поможет кому-то еще.