gpt4 book ai didi

javascript - 按名称打开电子表格,如果未找到则创建新电子表格

转载 作者:行者123 更新时间:2023-11-30 20:02:11 24 4
gpt4 key购买 nike

我正在使用 Google sheets APINodejs将值附加到电子表格。但是,我想通过电子表格的名称获取电子表格 ID,或者如果没有找到则创建一个新的电子表格。需要明确的是,我的意思是 IFTTT 对其 Append to Spreadsheet 操作所做的操作。我无法事先知道电子表格 ID。

Opening spreadsheet by name in IFTTT

最佳答案

假设您已经知道如何使用 googleapis 进行身份验证,下面是一个最小示例,说明如何查询 Drive API 以搜索具有特定名称的电子表格,如果没有则使用 Sheets API 创建.

// auth is google.auth.OAuth2()
const sheets = google.sheets({version: 'v4', auth})
const drive = google.drive({version: 'v3', auth})

var fileName = 'yourSpreadSheetName'
var mimeType = 'application/vnd.google-apps.spreadsheet'

drive.files.list({
q: `mimeType='${mimeType}' and name='${fileName}'`,
fields: 'files(id, name)'
}, (err, res) => {
if (err) return console.log('drive files error: ' + err)
const files = res.data.files
if (files.length) {

// There is an existing spreadsheet(s) with the same filename
// The spreadsheet Id will be in files[x].id
console.log(`found spreadsheet with id: ${files[0].id}`)

} else {

// Create spreadsheet with filename ${fileName}
sheets.spreadsheets.create({
resource: {
properties: { title: fileName }},
fields: 'spreadsheetId'
}, (err, spreadsheet) => {
if (err) return console.log('spreadsheets create error: ' + err)
// The spreadsheet Id will be in ${spreadsheet.data.spreadsheetId}
console.log(`created spreadsheet with id: ${spreadsheet.data.spreadsheetId}`)
})
}
});

关于javascript - 按名称打开电子表格,如果未找到则创建新电子表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53253303/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com