如何使用v2 api列出我的保管箱中的所有文件和文件夹

时间:2017-02-07 09:21:24

标签: python dropbox dropbox-api

我使用的是Python SDK,想要检索所有的Dropbox文件和文件夹。

我正在使用Dropbox的Python SDK v2。

dbx = Dropbox("DROBOX_ACCESS_TOKEN")
response = dbx.files_list_folder("/Apps/Marketing")
for file in response.entries:
    print file.name

然而,我收到错误:

dropbox.exceptions.ApiError: ApiError('b0479a07aaa5a9b405862ae75cbf135d', ListFolderError(u'path', LookupError(u'not_found', None)))

登录时,Dropbox中存在Apps文件夹(根文件夹中的概率)

当我尝试列出空路径以获取根文件夹文件夹时:

response = dbx.files_list_folder("")

响应条目为空。

如何在dropbox v2 api中检索所有文件和文件夹的列表?

令牌是我在dropbox中的OAuth 2设置中生成的令牌。

我给了令牌App文件夹访问名为Marketing的Apps下的文件夹。

2 个答案:

答案 0 :(得分:2)

  

我正在使用Python SDK并想要检索我的所有Dropbox文件和文件夹   ...
  我给了令牌App文件夹访问被调用的Apps下的文件夹   销售。

您应该已经为您的应用提供了 Full Dropbox 访问类型。使用应用文件夹访问类型,您的应用会自动限制在Apps下的相应文件夹中,因此传递到该应用下运行的files_list_folder()的所有路径都会相对于您的应用进行解释#39;专用文件夹。

答案 1 :(得分:1)

@RunWith(SpringRunner.class)
@WebMvcTest(DataObjectController.class)
public class DataObjectControllerTest {

    @Autowired
    private MockMvc mvc;

    @MockBean
    private DataObjectController dataObjectController;

    private final String uri = "/api/idataobject";

    @Test
    public void noAppName() throws Exception {
        DataObject object = getDataObjectNoAppName();

        final String body = new Gson().toJson(object);

        given(dataObjectController.postDataObject(object)).willReturn(new ResponseEntity(HttpStatus.BAD_REQUEST));

        mvc.perform(post(uri)
                .content(body)
                .contentType(MediaType.APPLICATION_JSON))
                .andExpect(status().isBadRequest());
    }
}