Sheet Best API问题:如何通过POST请求向指定Google工作表写入数据?
解决Sheet Best API指定目标工作表的问题
Sheet Best API支持指定目标工作表,你当前的请求未添加工作表指定参数,所以默认写入第一个工作表。以下是两种可行的指定方式:
方式1:在API URL中追加工作表标识
你可以在API密钥后拼接工作表的名称或索引(索引从0开始计数),示例格式如下:
- 按工作表名称指定:
https://sheet.best/api/sheets/MY-API-KEY-FOR-SHEET-BEST-HERE/Sheet2 - 按工作表索引指定:
https://sheet.best/api/sheets/MY-API-KEY-FOR-SHEET-BEST-HERE/1(索引1对应第二个工作表)
针对你的三个表单,可修改代码为:
// 表单1对应第一个工作表 const submitForm1 = (data) => { axios.post("https://sheet.best/api/sheets/MY-API-KEY-FOR-SHEET-BEST-HERE/Sheet1", data) .then(response => console.log(response)) .catch(error => console.log(error)); } // 表单2对应第二个工作表 const submitForm2 = (data) => { axios.post("https://sheet.best/api/sheets/MY-API-KEY-FOR-SHEET-BEST-HERE/Sheet2", data) .then(response => console.log(response)) .catch(error => console.log(error)); } // 表单3对应第三个工作表 const submitForm3 = (data) => { axios.post("https://sheet.best/api/sheets/MY-API-KEY-FOR-SHEET-BEST-HERE/Sheet3", data) .then(response => console.log(response)) .catch(error => console.log(error)); }
方式2:通过请求头指定工作表名称
也可以在请求头中添加X-Worksheet-Name字段来指定目标工作表,这种方式更灵活,适合动态切换工作表的场景:
const submitForm = (data, sheetName) => { axios.post("https://sheet.best/api/sheets/MY-API-KEY-FOR-SHEET-BEST-HERE", data, { headers: { 'X-Worksheet-Name': sheetName } }) .then(response => console.log(response)) .catch(error => console.log(error)); } // 调用时传入对应工作表名称 submitForm(formData1, "Sheet1"); submitForm(formData2, "Sheet2"); submitForm(formData3, "Sheet3");
注意事项
- 工作表名称需与Google Sheets中的名称完全一致(区分大小写)
- 索引计数从0开始,第一个工作表对应索引0
- 确保你的Sheet Best API密钥拥有目标工作表的写入权限
内容的提问来源于stack exchange,提问作者Micah Johnson
相关产品推荐
相关产品推荐

