将文件从Google云端存储添加到云端硬盘

时间:2016-11-18 16:09:47

标签: google-api google-drive-api google-cloud-storage google-cloud-platform

我正在开发NodeJS中的后端服务。它通过请求临时链接并将此链接发送到第三方分析服务来处理来自Google云端存储的图像。我还希望将图片添加到共享的Google云端硬盘文件夹中。有没有办法轻松地做到这一点(例如,通过使用Drive API并将链接发布到文件,而不是下载文件并随后上传它)。换句话说:Drive API是否接受指向文件的链接,而不是上传它们?或者是否有任何其他聪明的方式可以轻松地将Google Cloud分享到云端硬盘(因为它既是Google服务)。

由于

2 个答案:

答案 0 :(得分:0)

我已经进行了一些搜索,但是,除了下载和上传文件之外,我还没有看到从Google云端存储添加文件到Google云端硬盘的方法。此外,Google Cloud Storage APIs可以与之互动的AFAIK gsutil也支持在与其他存储共享时下载和上传文件。

而且,正如Cloud Storage - Frequently Asked Questions中所述,Google云端硬盘和Google云端存储是两种不同的存储服务,它们都允许以编程方式访问其功能,但API的目标却截然不同。

但是,您可能希望尝试使用Request Endpoints,其中您可以通过三个请求端点(URI)访问Google云端存储。您使用哪一个取决于您正在执行的操作。

重要提示:此页面上描述的Google云端存储URI可能会发生变化。

  

您可以使用以下网址访问对象:

     

XML API

     

storage.googleapis.com/<bucket>/<object>     <bucket>.storage.googleapis.com/<object>

     

JSON API

     

www.googleapis.com/download/storage/v1/b/<bucket>/o/<object-encoded-as-URL-path-segment>?alt=media

     

这些URL支持安全套接字层(SSL)加密,这意味着您可以使用HTTP或HTTPS。如果您使用OAuth 2.0对Google Cloud Storage API进行身份验证,则应使用HTTPS。

您可能还想查看Sharing and Collaboration以获取更多信息。

答案 1 :(得分:0)

现在最好的方法是使用Google Colab笔记本:

  1. 创建一个Google Colab笔记本并连接到您的GCP存储桶并将Google云端硬盘安装到该笔记本上:
# authenticate
from google.colab import auth
auth.authenticate_user()

# set your gcp project
!gcloud config set project my-project

# mount your drive
from google.colab import drive
drive.mount('/content/drive')
  1. 运行gsutil命令将您的GCP存储数据复制到已安装的驱动器
!gsutil -q -m cp -r gs://my-bucket-name drive /content/drive/My\ Drive/
相关问题