我试图为批准我的应用的用户获取文件和文件夹(现在我在获得批准后获得了令牌)。
我能够通过获取用户dbid并使用" Dropbox-API-Select-User"来扫描团队中的所有用户。标题,但我希望有时只扫描当前用户(批准我的应用程序的用户)。
我现在无法获得他的dbid,当我尝试去#34; https://api.dropboxapi.com/2/users/get_current_account"没有" Dropbox-API-Select-User"标题我收到此标题丢失的消息。
任何想法如何在没有dbid的情况下访问他的文件/文件夹,或以某种方式获取他的dbid?也许在授权过程中某种程度上?或其他一些API?
我正在使用此API:https://www.dropbox.com/developers/documentation/http/documentation
我获取当前帐户的请求:https://api.dropboxapi.com/2/users/get_current_account
我的标题:
内容类型:应用程序/ JSON
授权:Bearer my_token
并且我收到此错误:调用API函数时出错" users / get_current_account":缺少必需的X-Dropbox-Perform-As-Team-Member标头
感谢。
答案 0 :(得分:3)
Dropbox Business API应用程序链接到整个团队,而不是任何单个团队成员。在这种情况下,除了您的应用通过Dropbox-API-Select-User
或X-Dropbox-Perform-As-Team-Member
标头指定的内容之外,没有“当前用户”的任何概念。在使用用户端点时,Dropbox Business API应用始终需要指定特定用户。您可以从Business API端点获取成员ID,例如,使用/team/members/list。
只有团队的管理员可以授权该应用,听起来您可能想要对正好授权该应用的团队中特定管理员的帐户采取行动。 Dropbox Business API不会返回有关哪个管理员执行授权的信息。此外,无论如何,授权可能会由多个管理员多次发生。
请注意,如果您仅想要为授权该应用的特定用户执行API调用,则register应该使用普通的Dropbox API应用,而不是Dropbox Business API应用。 Dropbox API应用程序仅链接到用户,而不是团队,并且不需要额外的标头来指定团队成员。
编辑:
Dropbox API现在提供了一种使用/team/token/get_authenticated_admin确定哪个管理员授权特定访问令牌的方法。
如果您使用的是官方SDK,则此端点也会有相应的方法。