2

アカウントのフォロワー数を php ページに表示しようとしていますが、何らかの理由でhttps://api.instagram.com/v1/users/ {$userid}/follows?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;
    }
?>   

私が間違っているかもしれないことは何ですか?

ありがとう

4

2 に答える 2

1

エンドポイントは、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";

また、今後の参考のために、Instagram の API Consoleを使用して呼び出しをテストすることを強くお勧めします。そうすれば、各呼び出しから返されるデータを確認できるため、正しくアクセスできます。

于 2012-11-13T17:04:32.850 に答える
0

私はそれが古い質問であることを知っていますが、他の誰かを助けるかもしれません.

$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 キーです。ユーザーのユーザー ID を取得できないが、名前はわかっている場合は、そのページに移動し、ブラウザーでプロフィール画像を調べるだけで、そこからユーザー ID を特定できます。

それが他の人に役立つことを願っています。

于 2014-10-16T04:30:00.073 に答える