gpt4 book ai didi

javascript - Instagram如何获取access_token

转载 作者:行者123 更新时间:2023-11-29 20:09:50 25 4
gpt4 key购买 nike

我是 Instagram 应用程序开发的新手,现在已经为这个问题苦苦挣扎了一段时间。基本上,它是这样的:

我将用户重定向到这样的授权 url:

window.open("https://api.instagram.com/oauth/authorize/?client_id=" + igClientId + "&redirect_uri=" + igCallbackUrl + "&response_type=code", "_blank");

然后,当用户登录时,页面会重新加载,Instagram 代码会添加到回调 url 的末尾('?code=returned_by_instagram_code')。

这就是我卡住的地方。

我如何在页面重新加载后从 url 获取返回的代码(它存储在 cookie 或 session 中以便我可以通过某种方式访问​​它,或者我应该通过回调 url 和附加的一些函数以某种方式获取它)?

接下来,当我获得代码时,我如何向 Instagram 发送 (POST) 请求以获取 access_token


提前感谢您的帮助。

附言。我正在使用没有任何框架(例如 jquery)的 javascript,这就是我正在寻找的响应。

最佳答案

根据关于仅使用客户端访问 token 生成的文档 (http://instagram.com/developer/authentication/),您需要更改的关键是您的 URL 中的响应代码为:&response_type=token

客户端(隐式)身份验证如果您正在构建一个没有服务器组件的应用程序(例如,一个纯 javascript 应用程序),您会注意到不可能完成上面的第三步来接收您的 access_token 而不必同时发送您的客户端 key 。您永远不应该将您的客户端 secret 发送到您无法控制的设备上。那么如何获得access_token呢?负责 OAuth 2.0 规范的聪明人预见到了这个问题并创建了隐式身份验证流程。

第一步:将您的用户定向到我们的授权 URL

https://instagram.com/oauth/authorize/?client_id=CLIENT-ID&redirect_uri=REDIRECTURI&response_type=token

此时,我们会向用户展示一个登录屏幕,然后是一个确认屏幕,他们会在该屏幕上批准您的应用访问他们的 Instagram 数据。请注意,与显式流程不同,此处的响应类型是“ token ”。

第二步:通过URL片段接收access_token

一旦用户通过身份验证并授权您的应用程序,我们将使用 url 片段中的 access_token 将他们重定向到您的 redirect_uri。它看起来像这样:

http://your-redirect-uri#access_token=270740070.f59def8.d58713f2c81741c5b3686109306f98b4

只需从 URL 片段中获取 access_token 即可。如果用户选择不授权您的应用程序,您将收到与显式流程中相同的错误响应

关于javascript - Instagram如何获取access_token,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10552091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com