2013-04-26 33 views
0

下面的StackOverflow问题似乎在这个问题上被广泛引用。RE:通过API向Google Drive插入文件

How do I add/create/insert files to Google Drive through the API?

这些简单的指示失败对我来说。这是我送谷歌:

POST https://www.googleapis.com/upload/drive/v2/files 
Authorization: Bearer ya29.AHES6ZRO8SLGjreb1DbNju62WF-AHES6ZRO8SLGjreb1DbNju62 
Content-Length: 347 
Content-Type: multipart/mixed; boundary="1366986113131560" 

--1366986113131560 
Content-Type: application/json 

{"mimeType":"text/plain","title":"hi.txt","parents":[{"id":"0BxnfVWt9egI_VDJnbFBpZDExTmM"}]} 
--1366986113131560 
Content-Type: text/plain 

setPendingSave 
loadSegments 
setSequence 
addSegment 
setspanformat 
setspanformat 
hidespanformat 
setspanformat 
setspanformat 
hidespanformat 
--1366986113131560-- 

当我提出这一点,谷歌与错误提示信息:

多部分内容有太多的非媒体部分

我不想痛打这一点,但它是很好的证明,API的工作原理,而不必依赖谷歌图书馆。

+0

由于意外,我再次使用Mime-Type“image/jpeg”进行了测试,上传成功。 “text/plain”不是有效的文件类型吗? – 2013-04-26 15:23:52

+0

此外,在子部分标题中设置“Content-Transfer-Encoding”值会导致消息“格式错误的多部分主体”。 – 2013-04-26 15:56:56

回答

0

请使用https://www.googleapis.com/upload/drive/v2/files?uploadType=multipart作为您的端点。如果您不包含uploadType=multipart,我们可以分别提取元数据和内容。

+0

你的陈述是不正确的。看到我上面的第一条评论:通过使用不同的,不正确的mime类型成功插入文件。 – 2013-04-26 16:55:01

+0

元数据可以在我们(Google云端硬盘)依赖上传的基础架构中表示为“text/plain”。它假设你试图以两种不同的非法格式上传元数据。这就是为什么我建议你分开请求。 – 2013-04-26 22:33:42

+0

我刚刚意识到您并未使用分段上传类型。修复我的答案。 – 2013-05-06 13:44:35

相关问题