Dropbox Http API - 获取当前令牌帐户的文件/文件夹

Ela*_*erg 1 dropbox dropbox-api

我正在尝试为批准我的应用程序的用户获取文件和文件夹(现在我在他批准后拥有令牌)。

我能够通过获取用户 dbid 并将其与“Dropbox-API-Select-User”标头一起使用来扫描团队中的所有用户,但有时我只想扫描当前用户(批准我的应用程序的用户)。

我暂时无法获得他的 dbid,当我尝试在没有“Dropbox-API-Select-User”标头的情况下访问“ https://api.dropboxapi.com/2/users/get_current_account ”时,我得到了消息表明此标头丢失。

有什么想法如何在没有 dbid 的情况下访问他的文件/文件夹,或者以某种方式获取他的 dbid?也许在授权过程中?或者其他一些API?

我正在使用这个 API: https: //www.dropbox.com/developers/documentation/http/documentation

我获取当前帐户的请求:https ://api.dropboxapi.com/2/users/get_current_account

我的标题:

内容类型:application/json

授权:不记名 my_token

我收到此错误:调用 API 函数“users/get_current_account”时出错:缺少必需的 X-Dropbox-Perform-As-Team-Member 标头

谢谢。

Gre*_*reg 5

Dropbox Business API 应用程序链接到整个团队,而不是任何单个团队成员。在这种情况下,除了您的应用程序通过Dropbox-API-Select-UserX-Dropbox-Perform-As-Team-Member标头指定的内容之外,不存在任何“当前用户”的概念。Dropbox Business API 应用程序在使用用户端点时始终需要指定特定用户。您可以从业务 API 端点获取成员 ID,例如使用/team/members/list

只有团队的管理员才能授权该应用程序,听起来您可能想对恰好授权该应用程序的团队中特定管理员的帐户进行操作。不过,Dropbox Business API 不会返回有关哪个管理员执行了授权的信息。此外,无论如何,授权可能会由多个管理员多次进行。

请注意,如果您只想为授权应用程序的特定用户执行 API 调用,则您注册并应该使用普通的 Dropbox API 应用程序,而不是 Dropbox Business API 应用程序。Dropbox API 应用程序仅链接到用户,而不链接到团队,并且不需要额外的标头来指定团队成员。


编辑:

Dropbox API 现在提供了一种方法来确定哪个管理员授权了特定的访问令牌,使用/team/token/get_authenticated_admin

如果您使用的是官方SDK,该端点也会有相应的方法。