Google cloud storage 从网站直接上传到Goolge云存储桶

Google cloud storage 从网站直接上传到Goolge云存储桶,google-cloud-storage,Google Cloud Storage,我公司的网站由第三方管理和托管。 我们希望在网站上提供一个门户,允许我们的客户将文件直接上传到Google云存储桶,而无需文件通过网站(这些上传可以跨越数千个文件和数GB) 我在AWS()上找到了一个很好的指南,但是我甚至不能确定Google是否有相同的功能,更不用说如何实现了 是否有人曾经做过这件事? < P>请考虑为我们提供更多关于你想要达到的技术细节。比如编程语言、服务器平台、网站所在的云提供商 概括地说,我可以告诉你,谷歌云存储有一种类似的上传文件的方法,即 例如,如果使用Python编

我公司的网站由第三方管理和托管。 我们希望在网站上提供一个门户,允许我们的客户将文件直接上传到Google云存储桶,而无需文件通过网站(这些上传可以跨越数千个文件和数GB)

我在AWS()上找到了一个很好的指南,但是我甚至不能确定Google是否有相同的功能,更不用说如何实现了


是否有人曾经做过这件事?

< P>请考虑为我们提供更多关于你想要达到的技术细节。比如编程语言、服务器平台、网站所在的云提供商

概括地说,我可以告诉你,谷歌云存储有一种类似的上传文件的方法,即

例如,如果使用Python编写代码,则可以使用签名URL将文件上载到bucket:

import datetime

from google.cloud import storage


def generate_upload_signed_url_v4(bucket_name, blob_name):
    """Generates a v4 signed URL for uploading a blob using HTTP PUT.

    # bucket_name = 'your-bucket-name'
# blob_name = 'your-object-name'

storage_client = storage.Client()
bucket = storage_client.bucket(bucket_name)
blob = bucket.blob(blob_name)

url = blob.generate_signed_url(
    version="v4",
    # This URL is valid for 15 minutes
    expiration=datetime.timedelta(minutes=15),
    # Allow PUT requests using this URL.
    method="PUT",
    content_type="application/octet-stream",
)

print("Generated PUT signed URL:")
print(url)
print("You can use this URL with any user agent, for example:")
print(
    "curl -X PUT -H 'Content-Type: application/octet-stream' "
    "--upload-file my-file '{}'".format(url)
)
return url

然后您可以根据组织的需要实施此功能

云运行+云存储可以以较低的成本满足您的需求。有一个由第三方提供的完整解释和代码供您参考。谢谢Shawn。这帮了大忙。需要找出进入谷歌云网站的认证,但伟大的是看到一个工作的例子!嗨,克里斯。谢谢你的回复。签名URL似乎是一种方式,现在只需要与网站人员联系,了解如何对其服务器进行身份验证,以便它可以生成签名URL。