【发布时间】:2018-06-28 17:16:34
【问题描述】:
我正在尝试在网站上为客户显示图片库。这些图像应自动从他们的 Instagram 帐户中获取。很简单,对吧?嗯,以前是……
我无法使用 Instagram API,因为它已被弃用:https://www.instagram.com/developer/
因此,我尝试使用 Instagram Graph API 来获取该帐户的最新图像:https://developers.facebook.com/docs/instagram-api/reference/user/media#get-media
短版请跳至底部,长版请继续阅读。
长篇大论
问题是,我很难理解如何获得与此 API 交互的凭据。据我所知,我需要先创建四个独立的东西:
- Instagram 企业帐户(完成)
- Facebook 用户(完成)
- Facebook 页面(完成)
- Facebook 应用程序(完成...ish)
我什至不确定我是否需要创建所有这些东西(尤其是应用程序),但这就是我现在所处的位置。我正在尝试根据此页面确定我需要哪些权限:https://developers.facebook.com/docs/facebook-login/access-tokens#apptokens
我认为我需要一个“应用程序访问令牌”,据我了解,我可以使用应用程序 ID 和应用程序密码来代替应用程序访问令牌,这实际上似乎有点工作。
然后我尝试根据链接的 Facebook 页面获取我需要的 Instagram ID,我通过这个调用(使用真实的 Facebook 帐户 ID 和正确的令牌):https://graph.facebook.com/some-facebook-account-id-here?fields=instagram_business_account&access_token=something-here|and-here
对该电话的回应是:
{
"error": {
"message": "(#10) To use 'Page Public Content Access', your use of this endpoint must be reviewed and approved by Facebook. To submit this 'Page Public Content Access' feature for review please read our documentation on reviewable features: https://developers.facebook.com/docs/apps/review.",
"type": "OAuthException",
"code": 10,
"fbtrace_id": "[redacted]"
}
}
然后我陷入了一个尝试提交“功能”以供审查的兔子洞,但最后我遇到了第 22 条问题,它要求我对我所要求的东西进行现场工作演示用于访问。我什至无法访问它时,我不明白如何进行现场工作演示。
长话短说
长话短说,对于本应非常简单的事情来说,这似乎过于复杂了。也许我只是做错了?
如果你处于我的位置,你会怎么做才能访问 Instagram Graph API,以便您可以从特定 Instagram 帐户获取一些图像以显示在网站上?
【问题讨论】:
-
不,应用访问令牌不会授予您访问权限。它清楚地表明您需要一个至少具有
instagram_basic权限的用户访问令牌,就在您链接到的文档中。 -
@CBroe 我的理解并不完美,但我认为两者都会“起作用”。但是,用户访问令牌似乎是短暂的(一小时),必须由实际的网站访问者授予。同样,我可能会误解某些东西,但这似乎不适用于我的场景。
-
令牌可以扩展,参见文档……
-
@CBroe 是的,我也刚刚读到这个。但即便如此,我也需要应用访问令牌来扩展用户访问令牌,对吗?无论如何,这不是我遇到的问题。我真正的问题是到达那里的步骤的复杂性。在调用实际 API 来获取媒体之前,我需要调用其他 API(例如,查找 Instagram 帐户的 ID)。反过来,它们需要额外的箍来跳过(例如,创建我尚未实现的“应用程序”的截屏视频,这实际上只是网页上的一个小部件)。
标签: facebook-graph-api instagram