Drive API导出表格为何仅支持Excel MIMEType而非Google Sheets?
Drive API files.export接口格式问题解答
提问内容

我正在学习Drive API的工作原理,偶然发现了Drive API v3的files.export接口测试页面。我在页面侧边栏进行了测试,使用了一个公开的Google Sheet测试文件。
从两张截图中可以看到,我输入了fileId和mimeType。令我疑惑的是,当mimeType设为"google sheet"时会返回错误;而改为MS Excel的mimeType则返回200状态码。
请问这是什么原因?

原因解析
Drive API的files.export接口核心作用是将Google原生格式文件(如Google Sheet、Google Docs)转换并导出为非Google原生格式,它不支持将原生格式文件导出为同类型的Google原生格式。
- 当指定MS Excel的MIME类型(
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet)时,完全符合接口设计逻辑:把Google Sheet(原生格式)转换为Excel格式,因此接口返回200成功。 - 当指定Google Sheet的MIME类型时,违背了
files.export的使用场景——接口没有必要也不支持把Google Sheet再导出为Google Sheet格式,所以会返回错误。
如果需要获取Google Sheet的原生文件,应该使用files.get接口,或者直接通过文件的访问链接操作,而非files.export。
内容的提问来源于stack exchange,提问作者shenkwen
相关产品推荐
相关产品推荐

