google-cloud-platform - 通过请求 URL 调整 Google Cloud 图像的大小?

标签 google-cloud-platform google-cloud-storage

我需要一个图像 CDN,我可以在其中从 URL 参数调整图像大小。例如,如果我想要一个 400 像素宽的版本,我会使用 www.cdn.com/image-400如果我想要一个 200 像素的版本,它会是 www.cdn.com/image-200
从看这篇博文看来,谷歌云可以做到这一点:

https://medium.com/google-cloud/uploading-resizing-and-serving-images-with-google-cloud-platform-ca9631a2c556

然而,我无法理解这篇文章,我想知道它是否已过时。指向 Google 文档的链接之一说您应该改用 Google Cloud Storage https://cloud.google.com/appengine/docs/standard/python/blobstore/

我遇到了这两个 SO 问题,但它们似乎给出了相反的答案:

Get resized images from Google cloud storage

Resize image in Google Cloud Storage

Google Cloud 可以根据 url 调整图像大小吗?如果是这样,那么你怎么能做到这一点?我在 Google Cloud Storage 中设置了一个存储分区,您可以使用这样的存储分区中的图像吗?

最佳答案

首先是的,这是可能的,但是作为您共享的第一个 SO 答案,它没有直接实现,并且正如您注意到的那样,它不像将 =sxx 添加到存储桶的 URL 那样简单。
因此写作 https://storage.googleapis.com/bucketname/file.jpg=sxx不起作用。

为了创建能够支持此功能的 URL,您必须使用 Java 的图像 API,特别是 getServingUrl() method (还有 GOPython 版本),它将生成一个与您分享的文章中包含的 URL 形状完全相同的新 URL。

使用 API 检索 URL 后,您将能够获取调整大小的图像,直接引用 from the official documentation您将能够添加:

  • =sxx其中 xx 是 0-2560 之间的整数,表示图像最长边的长度(以像素为单位)。例如,添加 =s32 调整图像大小,使其最长尺寸为 32 像素。
  • =sxx-c其中 xx 是一个整数
    m 0–2560 表示以像素为单位的裁剪图像大小,-c 告诉系统裁剪图像。
  • 关于google-cloud-platform - 通过请求 URL 调整 Google Cloud 图像的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48117282/

    相关文章:

    google-cloud-platform - 如何处理匿名调用者没有storage.objects.get访问Google Cloud Storage对象

    node.js - 更可扩展的方式来编写此 Node.js 逻辑以从 Google Cloud Storage 检索和更新 CSV 数据?

    swift - 如何从 Firebase 实时数据库检索数据?

    google-cloud-platform - 为什么 Google Cloud SQL 连接失败 : "(psycopg2.DatabaseError) server closed the connection unexpectedly"

    authentication - 无法从 Google Container VM 镜像访问服务帐户的元数据 token

    python - 无法在 Google 计算引擎虚拟机中安装 fbprophet

    node.js - 在nodejs上使用GSUTIL访问google play商店数据

    node.js - 如何使用 Node.JS 读取 GCS 存储桶中删除的超时期限?

    google-cloud-platform - Terraform - 创建 Google Cloud SQL 实例不起作用

    python-3.x - 在没有 Tensorflow Serving 的情况下在 GCP 中部署 Tensorflow 模型