通过Drive API从网址上传图片

时间:2018-09-11 17:41:51

标签: http google-api google-drive-api postman

我正在使用Postman学习如何使用Google Drive API。

我正在尝试将API上传到URL中的图像。我正在使用此documentation link中描述的分段上传,但示例对我来说还不清楚,我可以上传包含正在传递的元数据的文件,但不能放置所传递的URL的图像被发送。

请帮助我了解我在做什么错。以下是我的请求代码。

POST /upload/drive/v3/files?uploadType=multipart HTTP/1.1
Host: www.googleapis.com
Content-length: *
Authorization: [myToken]
Content-Type: multipart/related; boundary=test
Cache-Control: no-cache
Postman-Token: [postmanToken]

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

{
  "name": "imageTest",
  "parents": ["1Ij0ZR8yrubkHQaT6tSQNgK6AhW4gbP49"]
}

--test
Content-Type: image/*

https://download.shutterstock.com/gatekeeper/W3siZSI6MTUzNjcwMzQ0NSwiayI6InBob3RvLzEwMDcwNjYwMjMvaHVnZS5qcGciLCJtIjoxLCJkIjoic2h1dHRlcnN0b2NrLW1lZGlhIn0sInR3UkJ0bDZNYUJNUXJ2azZlaE9MbTZlT2VBbyJd/shutterstock_1007066023.jpg
--test--

1 个答案:

答案 0 :(得分:0)

我怀疑您将能够使用Postman上传文件。它必须首先读取文件,然后分块发送文件数据。

google为此示例提供的所有示例都使用一种编程语言,尚无直接通过HTTP调用file upload

进行示例的示例。

如果它确实起作用,您将看到类似这样的内容。您仍然需要某种语言来读取文件内容并将其添加到其中。

POST / HTTP/1.1
[[ Less interesting headers ... ]]
Content-Type: multipart/form-data; boundary=---------------------------735323031399963166993862150
Content-Length: 834

-----------------------------735323031399963166993862150
Content-Disposition: form-data; name="text1"

text default
-----------------------------735323031399963166993862150
Content-Disposition: form-data; name="text2"

aωb
-----------------------------735323031399963166993862150
Content-Disposition: form-data; name="file1"; filename="a.txt"
Content-Type: text/plain

Content of a.txt.

-----------------------------735323031399963166993862150
Content-Disposition: form-data; name="file2"; filename="a.html"
Content-Type: text/html

<!DOCTYPE html><title>Content of a.html.</title>

-----------------------------735323031399963166993862150
Content-Disposition: form-data; name="file3"; filename="binary"
Content-Type: application/octet-stream

aωb
-----------------------------735323031399963166993862150--