Я вызываю Drive REST API Version 3 через URL-выборку в скрипте приложений.Я вызываю метод списка файлов и запрашиваю файлы.Запросы работают, но я получаю только атрибуты файлов по умолчанию в ответ API.Если я использую параметр fields, чтобы получить больше полей, он просто игнорируется.
var retVal =[];
var baseUrl = "https://www.googleapis.com/drive/v3/files";
var token = ScriptApp.getOAuthToken();
var options = {
method: "GET",
headers: {"Authorization": "Bearer " + token},
}
var maxResults = 100;
var params = {
q: query,
pageSize: maxResults,
fields: 'nextPageToken,incompleteSearch,files(kind,id,name,mimeType,starred,trashed)',
};
do {
var queryString = Object.keys(params).map(function(p) {
return [encodeURIComponent(p), encodeURIComponent(params[p])].join("=");
}).join("&");
var apiUrl = baseUrl + "?" + queryString;
Logger.log(apiUrl);
var response = JSON.parse(UrlFetchApp.fetch( apiUrl,
options).getContentText());
//Logger.log(response);
response.files.forEach(function(fileObj) {
retVal.push(fileObj);
})
params['pageToken'] = response.nextPageToken;
} while (params.pageToken);
Logger.log(retVal);
return retVal
Кодированный запрос: https://www.googleapis.com/drive/v3/files?q=name%20contains%20%22Test%20%2F%20Blub%2033%22%20and%20not%20mimeType%20%3D%20%22application%2Fvnd.google-apps.folder%22%20and%20trashed%20%3D%20false&pageSize=100&fields=nextPageToken%2CincompleteSearch%2Cfiles(kind%2Cid%2Cname%2CmimeType%2Cstarred%2Ctrashed)&orderBy=folder%2CmodifiedTime%20desc%2Ctitle&supportsTeamDrives=false&includeTeamDriveItems=false
результаты теста из API: [{kind = drive # file, name= Kopie von Test / Blub 33, id = 1oTbd78Bn7R7Xjo6TEAAyZmE5CjwdgRMT, mimeType = application / json}, {kind = диск # файл, имя = Test / Blub 33, id = 12IpttBvSY-Z31ueNqG_Dud46} mjDemp = jD =}} j5 = j5} = j5} = j5} = j5} = j5} = M6#file, name = Test / Blub 33, id = 1FqKyDFT0bpp1JuAj3WeSV6AL-b12X4vb, mimeType = application / json}]
Может кто-нибудь помочь, почему API игнорирует параметр поля?