使用Instagram API进行原生登录

时间:2014-02-07 06:07:46

标签: php api authentication oauth-2.0 instagram

我一直在研究IG的应用程序,并且正在查看使用IG API的其他网站。我遇到了this网站,该网站允许用户通过直接在网站中输入用户名和密码进行登录。然后,它可以访问IG API并获取跟随者计数之类的内容,但无需用户通常需要对IG API客户端进行身份验证。该应用甚至可以执行诸如使用您的帐户喜欢图片等功能,据我所知,还要求您使用提升的权限对应用进行身份验证。

我的问题是,该应用如何在不使用OA appears to be the only method of authentication的情况下登录用户?

3 个答案:

答案 0 :(得分:0)

您在手机中使用的Instagram应用程序使用HTTP/HTTPS与其应用程序服务器进行通信。您在问题上提供的链接用于模拟http次调用以模仿Instagram应用。

您可以通过代理(您自己的代理服务器)重定向手机的Internet连接。从您的代理服务器捕获Instagram应用程序在您登录,喜欢等时发送的Web请求。

如果请求是通过http频道,则很容易。但如果通过https,那么捕获它们将非常困难。您可以尝试使用Fidler或某种类似的软件。

答案 1 :(得分:0)

他们可能会使用像Selenium这样的网络自动化框架来实现自动链接内容等操作,实际使用帐户凭据登录Instagram网站并模拟鼠标点击等,以完成工作。换句话说,他们的“脚本”看起来就像是一个非常活跃的Instagram用户,因为它们都来自网络浏览器和他们网站之间的互动。

他们肯定没有使用API​​。您可以了解以下几个原因:

  1. 没有OAuth流来获取access_token
  2. 如果您登录并管理您的个人资料,它们不会出现在授权的应用程序部分中
  3. 他们正在做的是违反API使用条款。请参阅“不得”
  4. 下的内容
      

    使用Instagram API向Instagram发布自动内容,包括Instagram用户未发起和输入的喜欢和评论。

    我不是律师而且我没有内幕消息,但对我来说似乎很清楚,Instagram不想要这种类型的“机器人”活动。

    他们声称他们的时间设置方式是他们未被发现的,但我认为可以肯定的是,Instagram上的算法试图检测并阻止此类活动,如果他们这样做,帐户将是有被禁用的风险等我在这里没有内部知识,只是猜测。

答案 2 :(得分:0)

我认为发生的事情如下:

他们正在记录您的 PHPSESSID 并使用它,因此您可以使用图片和诸如此类的东西。他们直接在index.php。

中完成所有后端工作

如果您通过Chrome中的“网络”标签跟踪发送到index.php的请求,您会看到“Cookie: _ instamacro_advcontent = 1; PHPSESSID =“在index.php文件上”标题“标签。

我对使用Vine的API的网站(不公开,顺便说一句)也这样做。在我创建的一个名为api.php的PHP文件中,我使用Vine的API来执行操作。我根本不使用OAUTH。我只是使用用户“x-vine-session”cookie。