2014-08-28 2 views
2

В марте 2014 года электронная таблица Google обновлена ​​до листов Google.ключевая версия электронной таблицы Google

С помощью Google Spreadsheet API v3 (Java):

  • на листе, созданной на старой версии, функция gsService."oldsheet".getKey() возврата ключа в 23 длины.
  • на листе, созданном на новой версии, функция gsService."newsheet".getKey() возвращает ключ длины 44.

Моя проблема заключается в следующем .. Я хотел бы использовать Drive API для извлечения файла с использованием ранее запрошенного ключа из API Google Spreadsheet.

Так, с Drive API:

driveService.files.get(sheetKey); 

Это прекрасно работает с последней версией файла электронной таблицы Google (пост-март 2014), но возвращает результат в «не найден» на старой версии Google файл таблицы (до марта 2014 года).

Как преобразовать старый ключ в новый ключ [на стороне сервера]?

ответ

0

ключ Spreadsheet, который работает с приводом:

У меня была проблема, которая звучит так же, как это. Я переключаюсь на использование ключа, созданного с помощью скрипта приложений Google.

function getSpreadsheetURLKey() { 
    var spreadsheetId = SpreadsheetApp.getActiveSpreadsheet().getId(); 
    var spreadsheetDriveFile = DriveApp.getFileById(spreadsheetId); 
    var spreadsheetURLKey = spreadsheetDriveFile.getId(); 
    return spreadsheetURLKey; 
} 
+0

Спасибо за ваш ответ. К сожалению, мне нужно преобразовать старый файл электронной таблицы на сервер. – Yopla

+0

Я подозреваю, что DriveApp.getFileById (spreadsheetId); использует api google. Таким образом, вы можете сделать это на стороне сервера. Но если нет, можно позвонить на скрипт приложений Google с сервера и вернуть результат. – eddyparkinson

Смежные вопросы