【发布时间】:2016-09-02 10:34:30
【问题描述】:
在 Dropbox SDK 2.0 中,有没有办法检查文件夹是否存在?还是我们使用列出文件夹然后扫描列表的蛮力方法?
【问题讨论】:
标签: dropbox-api
在 Dropbox SDK 2.0 中,有没有办法检查文件夹是否存在?还是我们使用列出文件夹然后扫描列表的蛮力方法?
【问题讨论】:
标签: dropbox-api
您可以使用/2/files/get_metadata 端点检查给定路径中的现有文件夹。如果元数据存在,它将返回元数据,否则返回 path.not_found 错误。
您没有提及您指的是哪个 SDK,但例如,在 Dropbox API v2 Java SDK 中,它对应于 DbxUserFilesRequests.getMetadata 方法。
【讨论】:
这是检查文件夹是否存在并在文件夹不存在时创建的完整 Java 代码
DbxClientV2 dbxClient;
try
{
dbxClient.files().getMetadata("/MyFolder");
}
catch (GetMetadataErrorException e)
{
// TODO Auto-generated catch block
if (e.errorValue.isPath())
{
LookupError le = e.errorValue.getPathValue();
if (le.isNotFound())
{
System.out.println("Path doesn't exist on Dropbox: ");
try
{
dbxClient.files().createFolder("/MyFolder");
}
catch (CreateFolderErrorException e1)
{
// TODO Auto-generated catch block
e1.printStackTrace();
}
catch (DbxException e1)
{
// TODO Auto-generated catch block
e1.printStackTrace();
}
}
}
}
【讨论】: