【问题标题】:Instagram GET /users/user-id Not returning any data?Instagram GET /users/user-id 没有返回任何数据?
【发布时间】:2012-11-12 23:44:02
【问题描述】:

我试图在我的 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;
    }
?>   

知道我做错了什么吗?

谢谢

【问题讨论】:

    标签: php api json instagram endpoints


    【解决方案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's API Console 测试您的呼叫。这样您就可以看到每次调用都返回了哪些数据,以便您可以正确访问它。

    【讨论】:

    • 感谢您的建议。我认为我真正需要的链接是$followers = $userinfo['data']['counts']['followed_by'];。我改变了它,然后添加了“真实”输入,这一切都奏效了!谢谢$userinfo = json_decode($userinfo);
    • 我正在尝试获取用户数组,但由于某种原因它没有返回任何数据:{"pagination":{},"meta":{"code":200},"data":[]}。关于如何获得关注我的用户数组的任何想法?
    【解决方案2】:

    我知道这是一个老问题,但它可能对其他人有所帮助。

    $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。

    我希望它会帮助别人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-12-15
      • 2021-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多