我尝试了几个不能在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: ."
}
答案 0 :(得分:5)
尝试以下组合以查看是否有效。
String id = service.files().get("root").setFields("id").execute().getId();
答案 1 :(得分:0)
要执行上述组合,您必须为应用程序提供使用Drive的完全访问权限。 需要提供OAuth 2.0范围:https://www.googleapis.com/auth/drive或https://www.googleapis.com/auth/drive.readonly