Google Slides插件访问Sheets数据遇权限问题求助
低权限可行流程排查
你遇到的Requested entity was not found错误,核心是drive.file权限的授权范围限制导致的——这个权限仅允许访问用户明确授权给插件的单个/批量文件,且需要确保授权流程和API调用完全匹配。可以按以下步骤排查修复:
确认Picker授权关联正确
初始化Google Picker时,必须将当前用户的OAuth Token传入,确保选择文件后,该Token自动获得对应文件的访问权限。比如在Apps Script中,Picker构建代码要包含:var picker = new google.picker.PickerBuilder() .setOAuthToken(ScriptApp.getOAuthToken()) // 关键:绑定当前用户的授权Token .addView(google.picker.ViewId.SPREADSHEETS) .setCallback(pickerCallback) .build();验证API调用的凭据有效性
调用Sheets API的spreadsheets.get时,要确保使用的是Picker授权时的同一OAuth Token,且仅操作用户选择的文件ID。可以先通过Drive API的files.get接口验证是否能获取到目标表格的信息:// 先验证文件是否可访问 var file = Drive.Files.get(selectedFileId); // 再调用Sheets API读取命名区域 var sheetData = Sheets.Spreadsheets.get(selectedFileId, { ranges: '你的命名区域' });如果
Drive.Files.get成功但Sheets API报错,说明drive.file权限下Sheets API对命名区域的访问存在限制,这时候需要走申诉流程。检查命名区域的访问权限
确保目标命名区域所在的表格没有特殊权限设置(比如组织内部受限共享),且用户选择文件时已经明确授权插件访问该文件。
申诉流程建议
如果上述排查后仍无法解决,说明drive.file权限确实无法满足你的业务需求(比如命名区域的跨表关联读取、批量数据聚合等场景),需要向Google审核团队申诉恢复spreadsheets.readonly权限:
申诉时明确说明:
- 插件核心功能是读取Sheets指定命名区域,生成Slides可视化内容
- 已尝试
drive.file+Google Picker的方案,但遇到Sheets API访问命名区域的技术障碍(附上具体错误日志) - 说明
spreadsheets.readonly是实现功能的必要条件,且插件仅读取数据,不会修改用户表格内容
提供插件功能演示视频或截图,展示从选择表格到生成可视化的完整流程,让审核团队直观理解需求。
内容的提问来源于stack exchange,提问作者steeveesas

