【发布时间】:2014-12-23 00:23:54
【问题描述】:
我正在尝试连接到Dropbox API using OAuth2。我使用DropNet 作为客户端库并使用令牌(隐式授予)流选项。测试代码(与DropNet.Samples.WinForms 大致相同)是一个简单的对话框,带有嵌入式浏览器控件,用于显示 API 登录页面。
我看到的问题是 API 没有将浏览器重定向到指定的重定向 URL (http://localhost)。在我提供我的凭据并单击允许以授予访问权限后,我没有被重定向到本地主机,而是被重定向到 https://www.dropbox.com/1/oauth2/authorize_submit,它无法加载(错误 404)。重定向 URL 上也没有查询参数。我期望使用包含授权码的查询参数重定向到 localhost。
作为参考,登录 URL 为:https://www.dropbox.com/1/oauth2/authorize?response_type=token&client_id=<blah>&redirect_uri=http://localhost。
有谁知道我做错了什么?该行为看起来与Obtain OAuth2 Access Token for Dropbox Core API with Codenameone's Oauth2 Class 中描述的非常相似,但那里没有直接答案。
【问题讨论】:
-
重定向 URI 应在 /oauth2/authorize 的 redirect_uri 参数中指定:dropbox.com/developers/core/docs#oa2-authorize 您是否将其提供给 /oauth2/authorize?
-
是的,我提供了重定向 URL 并验证它在授权调用的查询字符串中。
-
你能发布一个示例 /authorize URL 吗?
-
感谢您的输入 - 我将 URL 添加到问题中。我还注意到客户端库 (DropNet) 使用的是 api.dropbox.com 而不是 www.dropbox.com,我认为这也是错误的,但现在已修复.
-
谢谢!样本看起来不错。嵌入式浏览器中是否启用了 JavaScript? (如果不是,则需要。)如果是,您是否在控制台中收到任何 JavaScript 错误?
标签: oauth oauth-2.0 dropbox-api