首页 文章

如何在没有用户交互的情况下获得instagram access_token(新api)?

提问于
浏览
12

随着instagrams新的api更改,似乎没有办法在没有某种用户交互的情况下获得access_token . 我发现的所有文档都表明,在通过用户交互授权应用程序时,必须通过loggin:https://www.instagram.com/developer/authentication/

服务器端(明确)流程第一步:将用户引导至我们的授权URL https://api.instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECT-URI&response_type=code注意:您可以提供可选范围参数,用于请求“基本”权限范围之外的其他权限 . 详细了解范围 . 注意:您可以提供可选的状态参数以执行特定于服务器的状态 . 例如,您可以使用它来防止CSRF问题 . 此时,我们向用户显示一个登录屏幕,然后是一个确认屏幕,用于授予您的应用访问其Instagram数据的权限 . 客户端(隐式)身份验证第一步:将用户定向到我们的授权网址https://api.instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECT-URI&response_type=token此时,我们提供用户使用登录屏幕然后是确认屏幕,他们授予您应用访问其Instagram数据的权限 . 请注意,与显式流不同,此处的响应类型为“token” .

使用可定期刷新的access_token,是否可以在没有用户交互的情况下获取访问令牌?

我正在尝试在我的网站上显示我的Feed,但除了API更改后提供的嵌入选项之外,我还没有找到方法 .

编辑:我的问题被标记为Instagram OAuth Access Token expiration for app的重复,但我不是在考虑到期(在IG文档中没有明确定义) . 我想要一种纯粹的编程方式来获取access_token .

3 回答

  • 0

    您可以将访问令牌存储在服务器中 . 只要它有效,您无需要求您的用户登录 .

    请记住,访问令牌有一个到期日期 . 因此,你必须处理这种情况[即,到期时,要求用户再次登录并获取并保存新的访问令牌]

  • 0

    在Instagram开发人员文档中,它指出:

    https://www.instagram.com/developer/authorization/

    个人网站的内容显示 . 如果您是开发人员并且想要在网站上展示Instagram内容,那么您无需提交您的应用以供审核 . 通过在沙盒模式下使用客户端,您仍然可以访问授予您权限的任何沙盒用户的最后20个媒体 .

    因此,如果您已经在Instagram上设置了客户端,只要您处于“沙盒”模式,就应该可以继续从API中获取帖子 . 您只能获取自己的用户帐户或任何已获得沙箱权限的帖子(限制为10) .

    如果您还没有访问令牌,则可以使用类似Oauth.io的内容 . (免费 . )

  • 0

    我也有这个问题 . 我假设您想编写一个脚本来为您运行 .

    一个(相当蹩脚)的解决方案是使用selenium,幻像JS,无头chrome或任何其他类似的技术来访问登录屏幕以填写帐户凭据(抛出窗口中的安全性),然后从以下重定向中获取代码网址...

    很遗憾Instagram不允许这种非用户需要的帐户选项 .

相关问题