过去几年,我们的数据库中有一堆混合的经过身份验证的帐户,其中一些在早期被授予“完全访问权限”,后来更改为仅使用“应用程序文件夹”。
有什么方法可以使用 API 来知道我们拥有的 access_token 是在 App 文件夹中还是在整个帐户中?
我们基本上想将所有帐户切换到应用程序文件夹,但只想更改那些需要它的帐户。我们必须移动文件夹并在数据库中存储默认路径。
浏览了文档后,我看不到任何提供此信息的内容,有什么想法吗?
过去几年,我们的数据库中有一堆混合的经过身份验证的帐户,其中一些在早期被授予“完全访问权限”,后来更改为仅使用“应用程序文件夹”。
有什么方法可以使用 API 来知道我们拥有的 access_token 是在 App 文件夹中还是在整个帐户中?
我们基本上想将所有帐户切换到应用程序文件夹,但只想更改那些需要它的帐户。我们必须移动文件夹并在数据库中存储默认路径。
浏览了文档后,我看不到任何提供此信息的内容,有什么想法吗?
感谢@Greg 为我指明了正确的方向。
因为/sharing/list_folders
不返回任何错误,所以我无法区分 Full Dropbox 和 App Folder 访问之间的区别。
为了将来参考,为了解决我的查询,我执行了以下操作:
/sharing/get_folder_metadata
到shared_folder_id
invalid_id
),则 access_token 具有完整的 Dropbox 访问权限Dropbox API 的设计使得权限级别(例如,应用程序文件夹与完整的 Dropbox)对应用程序是透明的,因此没有一种好的/官方的编程方式来检测任何给定访问令牌的权限。不过,我们会认为这是一个功能请求。
也就是说,API 的某些功能只有完整的 Dropbox 应用程序才能访问,因此您可以使用这些功能来隐式检测权限。例如,/2/sharing/list_folders端点只能由完整的 Dropbox 应用使用:
应用程序必须具有完整的 Dropbox 访问权限才能使用此端点。
这可能对您有用,尽管它仍然不是一个很好的解决方案,因为在应用程序文件夹应用程序的情况下,您将收到带有纯文本正文的 400 错误(而不是结构良好的 409 错误),因此您可以t 可靠地分辨出该错误与其他一些 400 错误之间的区别。要解决这个问题,您可以匹配错误消息,但这当然可能会改变:
调用 API 函数“sharing/list_folders”时出错:您的 API 应用程序是“应用程序文件夹”应用程序。不允许访问此 API 函数。