DropboxServerException:400 错误请求(预期 'root' 为 'dropbox'、'sandbox' 或 'auto';得到 "autonull")

DropboxServerException: 400 Bad Request (Expected 'root' to be 'dropbox', 'sandbox', or 'auto'; got "autonull")

我在 Android 应用程序开发中使用 Dropbox SDK。

我这样列出根目录下这样一个目录的条目:

entries = mDBApi.metadata(path, 2000, null, true, null);

有时我会遇到这个异常,有时效果很好:

DropboxServerException (nginx): 400 Bad Request (Expected 'root' to be 'dropbox', 'sandbox', or 'auto'; got "autonull")
    at com.dropbox.client2.RESTUtility.parseAsJSON(RESTUtility.java:265)
    at com.dropbox.client2.RESTUtility.execute(RESTUtility.java:415)
    at com.dropbox.client2.RESTUtility.execute(RESTUtility.java:339)
    at com.dropbox.client2.RESTUtility.streamRequest(RESTUtility.java:194)
    at com.dropbox.client2.RESTUtility.request(RESTUtility.java:124)
    at com.dropbox.client2.DropboxAPI.metadata(DropboxAPI.java:1730)

我不明白什么是autonull?以及它来自哪里。

请指教

"auto" 部分是 SDK 提供给 API 的 "root","auto" 是告诉 API根据应用密钥确定正确的根。

在实际的 API 调用中,根在实际 HTTP 请求中出现在路径之前,因此 "autonull" 似乎是根和路径的串联。也就是说,你的 path 显然是空的,而它应该是一些以“/”开头的字符串。路径开头的“/”会正确地将它与根分开。您可以在此处查看使用 metadata 方法的示例:

https://www.dropbox.com/developers/core/start/android#listing