有谁知道为什么一个已经注册了Dropbox多年的应用程序会突然显示
{"error": "invalid_scope", "error_description": "Non-scoped apps cannot specify token scopes"}
当尝试像这样使用Oauth刷新令牌时。
POST https://api.dropbox.com/oauth2/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: api.dropbox.com
Content-Length: 363
Expect: 100-continue
refresh_token=<VALIDTOKEN>&grant_type=refresh_token&client_id=<VALIDCLIENTID>&client_secret=<VALIDSECRET>&scope=account_info.write+account_info.read+files.metadata.write+files.metadata.read+files.content.write+files.content.read+sharing.write+sharing.read+file_requests.write+file_requests.read+contacts.write
我想我需要做一些注册的应用程序。这是需要一些新的要求,但我不知道什么。
1条答案
按热度按时间isr3a4wc1#
收到Dropbox论坛的回复如下。当然听起来像我的问题。
从您的描述来看,您似乎有一个旧的非作用域应用,该应用是在我们切换到将新应用注册为作用域应用之前创建的。
我们最近修复了一个错误,即API允许非作用域应用在使用“grant_type=refresh_token”调用/oauth2/token时使用“scope”参数指定作用域。作用域不适用于非作用域应用,因此应该会被拒绝,并显示您看到的错误。
要更正此问题,您应该:
为非作用域应用程序调用/oauth2/token时不提供“scope”参数,或者
迁移您的非作用域应用以使用作用域,您可以使用应用控制台上应用页面的“权限”选项卡执行此操作。
首选选项B。您可以在此处找到有关迁移的更多信息。
https://dropbox.tech/developers/migrating-app-permissions-and-access-tokens