spreadsheets.values.get, но с другими листами - PullRequest
0 голосов
/ 25 апреля 2020

Итак, я пытался прочитать значения из электронной таблицы в JS (не в узле), и я наткнулся на https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values/get. Для меня это выглядит правильным, но что, если я пытаюсь прочитать значения с разных листов?

Например, как бы мне использовать spreadsheets.values.get, чтобы прочитать A1: D1 на листе 2 в https://docs.google.com/spreadsheets/d/e/2PACX-1vQLrcAW_bL5HSVHorBJisdwv8S5_6Th9EP2wiYLmJKktj41uXVepUNOx4USNGdsVAuDOH_qknWs3pGa/pubhtml Или есть другой метод, который мне не хватает?

1 Ответ

1 голос
/ 26 апреля 2020

Я считаю, что ваша цель заключается в следующем.

  • Вы хотите получить значения из ячеек A1:D1 на листе Sheet2.
  • Вы хотите достичь этого используя метод spreadsheets.values.get в API Sheets с Javascript, который не является Node.js.
  • Вы уже смогли получить значения из Google Spreadsheet с помощью API Sheets.

Для этого, как насчет этого ответа?

Шаблон 1:

В этом шаблоне функция makeApiCall() примера сценария (Браузер) t его официальная используется документ .

Пример сценария:

var params = {
  spreadsheetId: '###',  // Please set the Spreadsheet ID.
  range: 'Sheet2!A1:D1',  // Please set the range as a1Notation.
};
var request = gapi.client.sheets.spreadsheets.values.get(params);
request.then(function(response) {
  console.log(response.result.values);
}, function(reason) {
  console.error('error: ' + reason.result.error.message);
});
  • Идентификатор электронной таблицы отличается от 2PACX-.... Поэтому, пожалуйста, будьте осторожны с этим. Пожалуйста, отметьте этот официальный документ .
  • . В этом случае предполагается, что вы уже выполнили процесс авторизации для использования Sheets API.

Pattern 2:

В этом шаблоне используется ваш URL, например https://docs.google.com/spreadsheets/d/e/2PACX-.... По вашему URL в вашем вопросе обнаруживается, что электронная таблица опубликована в Интернете. В этом случае, только когда значения извлекаются из опубликованной в Интернете электронной таблицы, вы также можете использовать следующий сценарий.

Пример сценария:

const url = "https://docs.google.com/spreadsheets/d/e/2PACX-1vQLrcAW_bL5HSVHorBJisdwv8S5_6Th9EP2wiYLmJKktj41uXVepUNOx4USNGdsVAuDOH_qknWs3pGa/pub?gid=###&range=A1%3AD1&output=csv";
fetch(url).then(res => res.text()).then(txt => console.log(txt));
  • В этом случае, пожалуйста, установите идентификатор листа на ### из gid=###.

Ссылки:

...