Sar*_*rar 2 shell upload curl google-drive-api
我正在尝试将zip文件上传到Google云端硬盘帐户curl.
文件已成功上载,但文件名未更新.它以默认文件名上传,即" 无标题 ".
我正在使用下面的命令.
curl -k -H "Authorization: Bearer cat /tmp/token.txt" -F "metadata={name : 'backup.zip'} --data-binary "@backup.zip" https://www.googleapis.com/upload/drive/v2/files?uploadType=multipart
Run Code Online (Sandbox Code Playgroud)
HAK*_*AKS 12
上面的答案工作正常,是我使用 Curl 将文件上传到 Google Drive 时使用的命令。但是,我不明白什么是作用域以及使此命令起作用所需的所有初始设置。因此,出于文档目的。我会给出第二个答案。
在撰写本文时有效...
访问凭证页面并创建一个新凭证(假设您已经创建了一个项目)。我为TVs 和 Limited devices创建了凭据,因此工作流程类似于:
创建凭据 > OAuth 客户端 ID > 应用程序类型 > 电视和受限输入设备 > 命名客户端 > 单击创建。
执行此操作后,我可以在查看新创建的凭据时复制客户端 ID 和客户端密钥。
注意:仅应替换 Curl 命令中带有双星号的变量。
下一步是运行 Curl 命令:
curl -d "client_id=**client_id**&scope=**scope**" https://oauth2.googleapis.com/device/code
Run Code Online (Sandbox Code Playgroud)
在这种情况下,范围可以被认为是您打算使用具有输入client_id的凭据进行的访问类型。文档中有关范围的更多信息对于重点用例,即上传文件,选择的范围是https://www.googleapis.com/auth/drive.file.
在运行上面的 curl 命令时,您将得到类似于以下内容的响应:
{ "device_code": "XXXXXXXXXXXXX", "user_code": "ABCD-EFGH",
"expires_in": 1800, "interval": 5, "verification_url": "https://www.google.com/device" }
下一步是访问VERIFICATION_URL在您的浏览器的响应,提供user_code并接受权限请求。遵循所有提示后,您将看到一个代码,其余步骤不需要此代码(但可能出于某些原因将其用于其他用例)。
下一步是使用 Curl 命令:
curl -d client_id=**client_id** -d client_secret=**client_secret** -d device_code=**device_code** -d grant_type=urn%3Aietf%3Aparams%3Aoauth%3Agrant-type%3Adevice_code https://accounts.google.com/o/oauth2/token
Run Code Online (Sandbox Code Playgroud)
您将收到类似于以下内容的响应:
{ "access_token": "XXXXXXXXX", "expires_in": 3599,
"refresh_token": "XXXXXXXXX", "scope": "https://www.googleapis.com/auth/drive.file", "token_type": "承载"}
现在您可以使用访问令牌并使用类似于以下内容的 Curl 命令来遵循接受的答案:
curl -X POST -L \
-H "Authorization: Bearer **access_token**" \
-F "metadata={name : 'backup.zip'};type=application/json;charset=UTF-8" \
-F "file=@backup.zip;type=application/zip" \
"https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart"
Run Code Online (Sandbox Code Playgroud)
Tan*_*ike 10
您可以使用Drive API v3上传zip文件.修改后的卷曲代码如下.
curl -X POST -L \
-H "Authorization: Bearer `cat /tmp/token.txt`" \
-F "metadata={name : 'backup.zip'};type=application/json;charset=UTF-8" \
-F "file=@backup.zip;type=application/zip" \
"https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart"
Run Code Online (Sandbox Code Playgroud)
为了使用它,请包括https://www.googleapis.com/auth/drive在范围内.
| 归档时间: |
|
| 查看次数: |
9263 次 |
| 最近记录: |