0

下面是我用来查找包含志愿者的文件列表的代码。

private static List<File> retrieveAllFiles(Drive service) throws IOException {
    List<File> result = new ArrayList<File>();
    Files.List request = service.files().list().setQ("Volunteers");
    System.out.println("Request size:" + request.size());
    do {
        try {
            FileList files = request.execute();
            System.out.println("Request files size:" + files.size());
            result.addAll(files.getItems());
            request.setPageToken(files.getNextPageToken());
        } catch (IOException e) {
            System.out.println("An error occurred: " + e);
            request.setPageToken(null);
        }
    } while (request.getPageToken() != null &&
             request.getPageToken().length() > 0);

    return result;
}

执行时它返回

[s~sakshumweb-hrd/3.368839385999923807].<stdout>: An error occurred: com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 OK
{
  "code" : 400,
  "errors" : [ {
    "domain" : "global",
    "location" : "q",
    "locationType" : "parameter",
    "message" : "Invalid Value",
    "reason" : "invalid"
  } ],
  "message" : "Invalid Value"
}

它有什么问题。

4

1 回答 1

3

当您想“查找包含志愿者的文件列表”时,我不确定您要搜索的内容,但您应该指定要从文件的哪个资源中搜索查询。

例如,如果您想搜索标题中包含“志愿者”的文件,您的代码应该是service.files().list().setQ("title contains 'Volunteers'");,或者如果您想同时搜索文件的标题和内容以查看它们是否包含“志愿者”,您的代码应该看起来像service.files().list().setQ("fullText contains 'Volunteers'"); Please仔细查看搜索参数文档。它将让您更好地了解如何搜索文件。

于 2013-07-17T06:28:34.523 回答