当前位置: 首页 > 面试题库 >

如何使用服务帐户凭据将文件上传到Google Drive

叶展
2023-03-14
问题内容

我想使用Google服务帐户凭据将文件上传到我的Google云端硬盘。

我从Google Developer Console下载了JSON格式的凭据,并从中获取了凭据。

这是我的代码段。

google_drive_service = discovery.build('drive', 'v3',
          credentials=ServiceAccountCredentials.from_json_keyfile_name
                           os.path.join(settings.CLIENT_PATH, settings.CLIENT_SECRET_FILE),
                           scopes=settings.SCOPES))


media = MediaFileUpload(tmp_file_path, mimetype=tmp_file.content_type, resumable=True)
google_drive_service.files().create(body=file_metadata, media_body=media, fields='id').execute()

代码会运行,并且没有错误,但是我找不到上载到我的Google云端硬盘帐户的文件。我不确定为什么不上传文件。您想帮我解决这个问题吗?


问题答案:

您遇到的问题是服务帐户不是您。您已将文件上传到服务帐户Google云端硬盘帐户,而不是您的个人云端硬盘帐户。尝试做一个文件列表,您应该会看到该文件。

建议。取得服务帐户的电子邮件地址,并在您的个人Google云端硬盘帐户上共享目录,就像您与其他任何用户共享的目录一样。然后,服务帐户将能够上载到此目录。只需在上传文件后确保对其设置权限,即可授予您的个人驱动器帐户对该文件的访问权限。上传文件后,该文件将归服务帐户所有。



 类似资料:
  • 我想上传文件到我的谷歌驱动器使用谷歌服务号凭据。 我从谷歌开发者控制台下载了一个JSON文件作为凭证,并从中获得了凭证。 这是我的代码片段。 代码运行,没有错误,但是我找不到上传到我的Google Drive帐户的文件。我不知道为什么文件没有上传。你愿意帮我解决这个问题吗?

  • 我正在尝试使用Google Drive Java API v3为我们的应用程序实现一项新服务,该服务负责将文件上传到Google Team Drive中的特定文件夹。我使用我的公司专门为这个项目创建的服务帐户,还从谷歌开发者控制台生成了一个包含私钥的JSON文件。我还使用该服务帐户的电子邮件将该文件夹共享给该服务帐户xxxxx@xxxx.iam.gserviceaccount.com并授予Cont

  • 我正在构建一个功能,将文件从我的web应用程序上传到我的客户google drive。我不希望应用程序对用户进行身份验证。谁曾经上传过我文件中的任何文件?我想上传到我客户的谷歌硬盘。 我假设服务帐户是用于此目的的帐户。我说得对吗? 当我使用以下代码上传文件时,它会成功上传,但在“我的驱动器”下不可见。然后我添加了一个权限,基本上与我的gmail帐户共享该文件。然后它在“与我共享”部分可见。 我希望

  • 我正在构建一个需要读取普通Gmail收件箱(不是域的一部分)的Web服务。 代码: 错误: 我看不出这有什么原因不起作用,但读完这篇文章后,你似乎不能在个人@gmail帐户上使用服务帐户凭据。有谁知道这是真的还是我做错了什么? 感谢您的帮助! 更新 如果我将更改为,我可以查看邮件,但无法修改标签,这是我的要求。

  • 问题内容: 我创建了一个从有权访问的FTP服务器下载文件的功能。如何将文件上传回FTP服务器? 以下是我使用的download_files方法: 问题答案: 使用Apache Commons Net库中的FTPClient类。 这是一个带有示例的代码段: 摘录自http://www.kodejava.org/examples/356.html

  • 问题内容: 以下是我用于将文件上传到服务器的代码。但是,即使经过几次尝试,甚至添加了严格模式,我都遇到了网络异常。 我是Android的新手,不知道如何使用异步任务,许多人建议您使用这种异步网络操作。谁能告诉我代码中哪里有错误以及应该在哪里使用异步任务? 问题答案: 有关更多信息,请参考此链接 http://vikaskanani.wordpress.com/2011/01/29/android-

  • 是否可以使用server1将文件上传到server2? 访客请访问:我的网站。com(server1) 然后他将一个文件上传到server1,server1会自动将该文件上传到server2?? 或者简单地说,用户可以使用server1作为代理将文件上传到server2,因为server2只能从server1访问 会有帮助吗,还是有其他更好的解决方案?

  • 我需要将文件从文件夹同步到restendpoint。因此,如果文件被放置在特定文件夹中,我需要将该文件发送到接受多部分文件的RESTendpoint。我正在使用ApacheCamel来实现这一点。 RESTendpoint在Spring中编写,如下所示: 我是Camel的新手,并且已经弄清楚了如何通过构建路由并获取文件来轮询目录,但是我无法弄清楚如何使用此路由将此文件放入其余endpoint。这是