Google api Google Drive API多部分上载导致文件损坏

Google api Google Drive API多部分上载导致文件损坏,google-api,google-drive-api,postman,multipart,Google Api,Google Drive Api,Postman,Multipart,我一直在尝试使用GoogleDriveAPI上传一个文件,但我面临一个问题,我似乎找不到答案。 这种情况发生在上传带有文本文件的图像时,看起来还可以 以下是此处的文档: 我需要像这样形成请求 我从邮递员或Salesforce Apex那里试过,都遇到了同样的问题 我正在发送编码为Base64的图像,但是图像没有在Google驱动器端解码,所以问题是没有预览,无法打开文件。如果我下载文件并在文本编辑器上打开它,那么内容就是文本 这是从VS代码打开的图像 我认为您正在尝试上载base64数据。那

我一直在尝试使用GoogleDriveAPI上传一个文件,但我面临一个问题,我似乎找不到答案。 这种情况发生在上传带有文本文件的图像时,看起来还可以

以下是此处的文档: 我需要像这样形成请求

我从邮递员或Salesforce Apex那里试过,都遇到了同样的问题

我正在发送编码为Base64的图像,但是图像没有在Google驱动器端解码,所以问题是没有预览,无法打开文件。如果我下载文件并在文本编辑器上打开它,那么内容就是文本

这是从VS代码打开的图像


我认为您正在尝试上载base64数据。那么这个修改呢

修改请求正文:
POSThttps://www.googleapis.com/upload/drive/v3/files?uploadType=multipart HTTP/1.1
授权:持票人[您的授权令牌]
内容类型:多部分/相关;边界=foo_bar_baz
内容长度:[整个请求正文中的字节数]
--富巴兹
内容类型:application/json;字符集=UTF-8
{
“名称”:“myObject”
}
--富巴兹
内容类型:图像/jpeg

内容传输编码:base64就是这样,在阅读答案之前通过手动上传到google drive并在控制台中检查请求找到它。如果GDrive文档中包含了这一点就好了。这会节省我很多时间。另外,我遇到的另一个问题是换行。如果您添加了一个不需要的额外换行符,它将中断所有内容,并且不会解码base64数据,而是存储一个文本file@Federico谢谢你的回复。对我认为是这样。当我查找与此相关的文档时,我没有找到它。我认为当添加这样的文档时,它将对用户有用。而且,换行符对于请求主体很重要。
POST https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart HTTP/1.1
Authorization: Bearer [YOUR_AUTH_TOKEN]
Content-Type: multipart/related; boundary=foo_bar_baz
Content-Length: [NUMBER_OF_BYTES_IN_ENTIRE_REQUEST_BODY]

--foo_bar_baz
Content-Type: application/json; charset=UTF-8

{
  "name": "myObject"
}

--foo_bar_baz
Content-Type: image/jpeg
Content-Transfer-Encoding: base64   <--- Added this.

[JPEG_DATA]
--foo_bar_baz--