Создавайте листы Google на командных дисках через API - PullRequest
0 голосов
/ 13 ноября 2018

Приведенный ниже код создает лист Google на My Drive, но что, если мне нужно было поместить это в папку на командном диске?

Я бы хотел изменить функцию createNewSpreadSheet таким образом, чтобы она загружала файл в указанную папку командного диска.

        function createNewSpreadSheet(auth) {
              const sheets = google.sheets({version: 'v4', auth});
          const resource = {
          properties: {
            title:'SampleSheet'
          },
        };
        sheets.spreadsheets.create({
          resource,
          fields: 'spreadsheetId',
        }, (err, spreadsheet) =>{
          if (err) {
            // Handle error.
            console.log(err);
          } else {
            console.log('spreadsheet::',spreadsheet.data.spreadsheetId);
          }
        });
        }


        // Load client secrets from a local file.
        fs.readFile('credentials.json', (err, content) => {
          if (err) return console.log('Error loading client secret file:', err);
          // Authorize a client with credentials, then call the Google Sheets API.
          authorize(JSON.parse(content), createNewSpreadSheet);
        });

1 Ответ

0 голосов
/ 13 ноября 2018

Вы можете проверить этот блог о том, как импортировать / загружать файлы в папки Team Drives .

Загрузка файлов в папку Team Drives также идентична загрузке в обычную папку Drive, а также выполняется с помощью DRIVE.files().create(). Импорт немного отличается от загрузки, потому что вы загружаете файл и , преобразуя его в формат документа G Suite / Google Apps, т. Е. Загружаете CSV в виде листа Google, или в виде обычного текста, или Microsoft Word & reg; файл как Google Docs. В примере приложения мы используем первое:

def import_csv_to_td_folder(folder_id, fn, mimeType):
        body = {'name': fn, 'mimeType': mimeType, 'parents': [folder_id]}
        return DRIVE.files().create(body=body, media_body=fn+'.csv',
                supportsTeamDrives=True, fields='id').execute().get('id')

Секрет импорта - MIME-тип. Это говорит Drive, хотите ли вы преобразование в формат G Suite / Google Apps (или нет). То же самое относится и к экспорту. Импортировать и экспортировать MIMEtypes, поддерживаемые Google Drive API, можно в моем SO-ответе здесь .

...