Google Drive API v3在java中获取根文件夹ID

时间:2017-01-05 11:24:07

标签: java google-drive-api

我尝试了几个不能在Java Api v3中获取根文件夹ID的东西。

我尝试了什么:

String id = service.files().get("fileId=root").setFields("id").execute().getId();

String id = service.files().get("fileId=root").setFields("?fields=id").execute().getId();

String id = service.files().get("root").setFields("?fields=id").execute().getId();

String id = service.files().get("fileId=root and ?fields=id").execute().getId();

我收到了这个错误:

    com.google.api.client.googleapis.json.GoogleJsonResponseException: 400 Bad Request
{
  "code" : 400,
  "errors" : [ {
    "domain" : "global",
    "location" : "fields",
    "locationType" : "parameter",
    "message" : "Invalid field selection ?fields=id",
    "reason" : "invalidParameter"
  } ],
  "message" : "Invalid field selection ?fields=id"
}

An error occurred: com.google.api.client.googleapis.json.GoogleJsonResponseException: 404 Not Found
{
  "code" : 404,
  "errors" : [ {
    "domain" : "global",
    "location" : "fileId",
    "locationType" : "parameter",
    "message" : "File not found: .",
    "reason" : "notFound"
  } ],
  "message" : "File not found: ."
}

我查看了migration文档和其他posts,但仍然无法获得root ID。谢谢!

2 个答案:

答案 0 :(得分:5)

尝试以下组合以查看是否有效。

String id = service.files().get("root").setFields("id").execute().getId();

答案 1 :(得分:0)

要执行上述组合,您必须为应用程序提供使用Drive的完全访问权限。 需要提供OAuth 2.0范围:https://www.googleapis.com/auth/drivehttps://www.googleapis.com/auth/drive.readonly