尝试使用 GoogleDrive API V3 将文件卷曲并上传到共享驱动器

Try to curl and upload file to Shared Drive using GoogleDrive API V3

我试图通过 Curl 使用 GoogleDrive API V3 将我的文件上传到 GoogleDrive。它在我自己的驱动器中运行良好,但在上传到我团队的共享驱动器时却不行。 (由于某些原因,我只能使用curl命令。)

这是我的代码:

    curl -X POST https://www.googleapis.com/upload/drive/v3/files?&uploadType=multipart \
    -H "Authorization: Bearer ${access_token}" \
    -F "metadata=@metadata.txt;type=application/json;charset=UTF-8" \
    -F "file=@test.zip"

这是我的元文件

    {
    "name": "test.zip",
    "parents": ["MY ID TO FOLDER IN SHARED DRIVE"],
    "description": "aa",
    }

但这是 return 这样的错误


    {
     "error": {
      "errors": [
       {
        "domain": "global",
        "reason": "notFound",
        "message": "File not found: MY ID TO FOLDER IN SHARED DRIVE.",
        "locationType": "parameter",
        "location": "fileId"
       }
      ],
      "code": 404,
      "message": "File not found: MY ID TO FOLDER IN SHARED DRIVE."
     }
    }

谁能告诉我哪里出了问题? 非常感谢!!

你的情况,下面的修改怎么样?

修改后的 curl 命令:

curl -X POST "https://www.googleapis.com/upload/drive/v3/files?uploadType=multipart&supportsAllDrives=true" \
-H "Authorization: Bearer ${access_token}" \
-F "metadata=@metadata.txt;type=application/json;charset=UTF-8" \
-F "file=@test.zip"
    添加了
  • supportsAllDrives=true。我以为 File not found: MY ID TO FOLDER IN SHARED DRIVE 的原因是由于这个。而且,URL 被 ".
  • 包围

修改后的元数据:

{
  "name": "test.zip",
  "parents": ["MY ID TO FOLDER IN SHARED DRIVE"],
  "description": "aa"
}
    "description": "aa",
  • , 已删除。

注:

  • 此修改后的 curl 命令假定您的访问令牌可用于上传文件。请注意这一点。
  • 当您对"MY ID TO FOLDER IN SHARED DRIVE"的文件夹没有写权限时,不能使用这个修改过的curl命令。所以请注意这一点。

参考: