首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >登录错误

登录错误
EN

Stack Overflow用户
提问于 2014-06-15 22:58:53
回答 1查看 2.3K关注 0票数 0

我想使用API登录instagram。但我错了:

代码语言:javascript
复制
{"status":"fail","message":"Your version of Instagram is out of date. Please upgrade your app to log in to Instagram."}

和我的php代码:

代码语言:javascript
复制
function open($url,$post="") {
$cookies = 'cookies.txt';
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HEADER, 0);
        if ($post != "") {
                curl_setopt($ch, CURLOPT_POST,1);
                curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
        }

        curl_setopt($ch, CURLOPT_USERAGENT, 'Instagram');
        curl_setopt($ch,CURLOPT_TIMEOUT, 50); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch,CURLOPT_REFERER, "");
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

        curl_setopt ($ch, CURLOPT_COOKIEJAR, $cookies); 
        curl_setopt ($ch, CURLOPT_COOKIEFILE, $cookies);

        $data = curl_exec($ch);
        curl_close($ch);
        return $data;
}

  function _render_form($data) {
        $t = "";
        foreach ($data as $k=>$v) { $t .= "&$k=$v";}
        return str_replace("###&","","###".$t);
  }

function login($username, $password) {
          $post = _render_form(array("username" => $username, "password" => $password, "device_id" => "MY_DEVICE_ID"));
          $isi = open("https://instagram.com/api/v1/accounts/login/", $post);
          echo $isi; die;
  }
$login = login('MY_USERNAME', 'MY_PASSWORD');

我把设备id改成了我手机的设备id。但问题没有解决..。有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-16 00:31:32

Instagram不再支持用用户名和密码登录。相反,您应该使用使用oAuth来执行需要身份验证的请求。

使用像这一个这样的库比手动实现要容易得多。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24234871

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档