Google drive api 谷歌在导入文档时不遵守mimetype
如果我使用google drive V3创建api上载文件并提供合法的mime类型(application/vnd.google-apps.drawing或application/vnd.google-apps.sheet),google将忽略我的mime类型并创建文档,或者给我一个错误 例如,应该可以将ODT电子表格上传到google工作表,但它会将其变成一个文档。似乎没有任何方法可以洞察幕后应用了什么样的启发式 我试图在评论中添加这一点,但它只允许一些字符。这是我最新的理解 我通过创建没有任何内容的工作表,然后使用update方法添加内容,解决了通过create方法创建电子表格失败的问题。我相信createapi中存在bug 我在图形的创建/更新api方面仍然存在问题。我无法使用jpeg或png作为输入创建任何类型的图形。以下是一些示例代码:Google drive api 谷歌在导入文档时不遵守mimetype,google-drive-api,Google Drive Api,如果我使用google drive V3创建api上载文件并提供合法的mime类型(application/vnd.google-apps.drawing或application/vnd.google-apps.sheet),google将忽略我的mime类型并创建文档,或者给我一个错误 例如,应该可以将ODT电子表格上传到google工作表,但它会将其变成一个文档。似乎没有任何方法可以洞察幕后应用了什么样的启发式 我试图在评论中添加这一点,但它只允许一些字符。这是我最新的理解 我通过创建没有任
func GoogleComment(actContext activity.Context,
log logger.Logger) (map[string]interface{}, error) {
srv, err := getSAService(actContext, log, true) //get a *drive.Service
if err != nil {
return nil, err
}
var filesResource drive.File
filesResource.Name = "somename"
filesResource.MimeType = "application/vnd.google-apps.drawing"
filesResource.Description = "some description"
filesCreateCall := srv.Files.Create(&filesResource)
filesResource.Parents = strings.Split(parents, "parentfoldera,parentfolderb") //fileids in the real world
var outputObj map[string]interface{}
text, _ := getInputVar(input, TEXT, false)
imageBytes, _ := ioutil.ReadFile("some jpeg image file")
filesCreateCall.Media(bytes.NewReader(imageBytes))
filesResourceResult, err := filesCreateCall.Fields("*").Do()
if err != nil {
return nil, fmt.Errorf("GoogledocsCreate failed to update file for reason: %s", err)
}
}
这总是返回错误:错误400:错误请求,错误请求
我在这里读到:
图纸进口商只了解WMF文件,这些文件是windoze专有的,对我没有任何用处。
思想?
wcn
我希望能够通过api上传内容,并对将创建的文档类型有一点确定。您的mime类型应该是源文档,而不是目标Google文档。因此,例如,OpenOffice.ods电子表格将是“application/vnd.oasis.opendocument.spreadsheet”。对不起。在你的问题中,我无法理解
上传文件的文件。如果您正试图上传以Google文档形式显示的MIMEType文件,您可以这样做。因此,当您提供当前脚本时,我认为它将帮助用户考虑您的解决方案。要转换文档,请在调用的可选参数中包含带有布尔值true
的convert
。我尝试了两种方法,但都无法获得所需的行为。例如,当使用text/plain时,它将始终生成一个文档。如果我想让它制作电子表格或演示文稿呢?如果你想制作电子表格,请将文本格式化为CSV并使用“text/CSV”。对演讲不太确定。