在本地测试 Instagram Basic API

Testing Instagram Basic API locally

我成功地遵循了“第一步”指南 here 来测试 Instagram API。

我按照文档中的建议使用 heroku 应用程序做到了。

现在我获得了我的访问令牌,我想在我的本地机器上测试这个 NodeJS Instagram private API,而不必一直在 Heroku 上部署仅用于开发目的我进行更改。

实际上,我想用 localhost 来测试它,而不是 myapp.herokuapp.com

我想在下图部分添加一个重定向 OAuth URI,例如 https://localhost:8443/auth/

因为它要求 URI 以 HTTPS 开头,我想我必须在我的 Express JS 中启用它,如 here 所述。

问题

在涉足如此(对我来说)复杂的领域之前,有没有人有这方面的经验或知道这是否是在本地测试 Instagram API 的正确方法?

我能够让它与 localhost 一起工作,但是非常乏味。

这些是步骤:

  • 在本地环境中启用https(我使用了库https-localhost)。

  • [我不知道这是否是强制性的]从主应用程序创建一个测试应用程序* (https://developers.facebook.com/docs/development/build-and-test/test-apps/)

  • 将重定向 OAuth URI 设置为 https://localhost:<MY_PORT>/auth/ 并更新 .../instagram-basic-display/basic-display/ 设置中的所有其他 URI。

  • 最后,不要忘记在请求中使用测试应用的client-id(又名app-id)和app-secret,它们与父应用不同

*重要提示:app-id 和 app-secret 在测试应用中不同!

您也可以使用 ngrok,允许您创建到本地主机的 https 隧道。

通过为您创建 public url(例如 https://xxxxxxx.ngrok.io/)并被开发人员仪表板接受为有效 URI,您可以通过互联网通过 https 访问您的本地主机。

此外,无需为此创建测试应用程序。伟大的开发工具。恕我直言。