Google cloud platform 通过请求URL调整谷歌云图像大小?

Google cloud platform 通过请求URL调整谷歌云图像大小?,google-cloud-platform,google-cloud-storage,Google Cloud Platform,Google Cloud Storage,我需要一个CDN的图像,我可以从URL参数调整图像的大小。例如,如果我想要一个400px宽的版本,我会使用www.cdn.com/image-400,如果我想要一个200px的版本,我会使用www.cdn.com/image-200 从这篇博文来看,谷歌云似乎可以做到这一点: 然而,我很难理解这篇文章,我想知道它是否过时了。谷歌文档的一个链接说,你应该使用谷歌云存储 我遇到了这两个问题,但它们似乎给出了相反的答案: 谷歌云能否根据url调整图像大小?如果是这样的话,你怎么能做到呢?我在谷歌

我需要一个CDN的图像,我可以从URL参数调整图像的大小。例如,如果我想要一个400px宽的版本,我会使用
www.cdn.com/image-400
,如果我想要一个200px的版本,我会使用
www.cdn.com/image-200

从这篇博文来看,谷歌云似乎可以做到这一点:

然而,我很难理解这篇文章,我想知道它是否过时了。谷歌文档的一个链接说,你应该使用谷歌云存储

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


谷歌云能否根据url调整图像大小?如果是这样的话,你怎么能做到呢?我在谷歌云存储中设置了一个存储桶,你能使用像这样的存储桶中的图像吗

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

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

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

  • =sxx
    其中xx是0–2560之间的整数,表示图像最长边的长度(以像素为单位)。例如,adding=s32调整图像的大小,使其最长尺寸为32像素

  • =sxx-c
    其中xx是 m 0–2560表示裁剪后的图像大小(以像素为单位),并且-c告诉系统裁剪图像


该解决方案似乎已被弃用(Go<1.12,Python<3,Java<11,我的Go版本已被禁用),是否有继任者的想法?