GCS API函数可获取图像的完整URL?

时间:2019-03-25 19:35:29

标签: google-sheets google-cloud-storage google-sheets-api google-sheets-formula

我有一些图像存储在 Google Cloud Storage 中,我想在Google表格电子表格中显示它们。 我拥有的图片网址的格式为:

https://storage.cloud.google.com/bucket-name/image-name

如果我尝试将其放入表格中的image()公式中,将无法正确显示图像。 当点击这些链接之一时,它将使用以下形式的URL重定向到图像:

([A-Za-z]\d)*-apidata.googleusercontent.com/download/storage/v1/b/bucket-name/o/object-name?qk=([A-Za-z]\d)*

是否有一个GCS API函数或Sheets公式可让我从第一个函数中获取此URL

1 个答案:

答案 0 :(得分:0)

您正在收到([A-Za-z]\d)*-apidata.googleusercontent.com/download/storage/v1/b/bucket-name/o/object-name?qk=([A-Za-z]\d)*链接,因为您正在尝试访问私有图像。

当您复制私有对象的链接并将其粘贴到浏览器中时,Google会检查您的凭据。如果您使用的帐户具有查看该对象的足够权限,则它将您重定向到api.data链接。

您可以通过在Cloud Console上复制对象的链接,然后将其粘贴到隐身模式下进行测试。您会看到它会提示您输入帐户。但是,如果您在隐身模式下粘贴api.data链接,它仍然会为您提供对象。

最简单的解决方案是将图像定义为Public,然后在工作表页面上复制公共URL 。会是这样的:

storage.googleapis.com/bucket/image.jpeg