Создать электронную таблицу для чтения и записи, используя Node js - PullRequest
0 голосов
/ 13 января 2020

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

, поэтому, пожалуйста, помогите кому-нибудь вывести sh меня в правильном направлении?

1 Ответ

0 голосов
/ 13 января 2020

Я работал над аналогичной задачей несколько недель go.

Итак, вот небольшая справка для вас.

1. Прочитайте и следуйте Node.js Краткое руководство .

Следите за следующими понятиями, такими как:

  • Области применения

Например, чтобы получить значение из ячейки, мы можем использовать spreadsheets.values.get

Области применения этого метода (использовать 1 из них):

https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.readonly
https://www.googleapis.com/auth/drive.file
https://www.googleapis.com/auth/spreadsheets
https://www.googleapis.com/auth/spreadsheets.readonly

in node.js это может быть массив

const SCOPES = ['https://www.googleapis.com/auth/spreadsheets.readonly'];
  • Token

После первого запуска ваш index.js файл, который Терминал запросит у вас для авторизации, в конце sh вы найдете token.json в вашем рабочем каталоге.

Если вы измените Области -> удалить token.json из своего каталога

  • SpreadsheetId

Когда вы создаете / редактируете свою электронную таблицу, вы получаете аналогичный URL https://docs.google.com/spreadsheets/d/1eqRe0ksSwgOoPO0C_mZE6opjS1TlsCU5g1HtkiiILuw/edit#gid=0 1eqRe0ksSwgOoPO0C_mZE6opjS1TlsCU5g1HtkiiILuw - идентификатор


2. Создайте пользовательские функции, используя Справочник по API листов Google

Пример Как получить значения ячеек :

const sheets  = google.sheets({ version: 'v4', auth });
function getCellsValue(cells, callback){
  sheets.spreadsheets.values.get({
  spreadsheetId: 'spreadsheetId',
  range: cells
  }, (err, res) => {
    if (err) return console.log('Error #1001 : getCellsValue: ' + err);
    const output = res.data.values;
    if (output.length) {
      callback(output);
      return output;
    } else {
      console.log('No data found.');
    }
  });
}

// here is the example use of this function which output values from D2:D13
getCellsValue("D2:D13", (e) => {
  for(let i = 0; i < e.length; i++){
    console.log(e[i].toString());
  }
}, (err, res) => {
  if (err) return console.error('The API returned an error: ', err.message);
})

3. Попробуйте использовать этот API

Это очень полезный инструмент.

Try this API

Если вам нужна дополнительная помощь, просто используйте Stackoverflow для больше прозрачности. Stackoverflow поможет вам, когда вы зададите очень подробный вопрос.

Надеюсь, это помогло вам, и вы можете начать путешествие по API Google Sheets.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...