gpt4 book ai didi

swift - 如何从 Firebase 存储下载 URL 中删除查询字符串

转载 作者:行者123 更新时间:2023-12-02 14:52:34 25 4
gpt4 key购买 nike

问题:

我需要能够从为 Firebase 存储中的图像生成的下载网址中删除所有链接装饰。但是,当所有链接修饰被剥离时,生成的链接当前将返回图像元数据的 JSON 文档。

上下文:

流程如下:

图像已从 iOS 应用上传到 Firebase。完成后,下载 URL 将通过 POST 请求发送到外部服务器。

提交图像 URL 时,URL 发送到的服务器不接受链接修饰。

目标:

更改 Firebase 存储下载 URL,例如删除所有链接修饰,如下所示:

注释:

问题实际上是双重的,首先需要操作链接以删除所有链接装饰。然后,链接的行为需要更改,因为为了返回图像,您需要在文件扩展名后面加上 ?alt=media,在本例中为 .jpg。目前,如果没有链接装饰,使用具有我所需结构的链接将返回元数据的 JSON 文档。

当前链接结构如下:

所需的链接结构:

token 对于访问图像是必需的,具体取决于适当的安全规则,但可以通过适当的读取权限来忽略。我可以根据需要调整规则,但我仍然需要能够删除 ?alt=media 并仍然返回图像。

最佳答案

根据 Frank 的回答,如果您访问关联的 Google Cloud Platform 项目,在“存储”选项卡中找到该存储桶并将该存储桶设为公开,您将能够从此处获取具有所需格式的图像。也就是说,您将无法通过 Firebase 进行访问

https://firebasestorage.googleapis.com/v0/b/example.appspot.com/o/[FOLDER_NAME]%[IMAGE_NAME].jpg

但通过 Google Cloud Storage,链接如下

https://storage.googleapis.com/[bucket_name]/[path_to_image]

进入 GCP 项目控制台后,使用与 Firebase 项目中的名称相同的名称访问存储桶。他们是同一个桶。然后通过关注 these steps 将存储桶公开。之后,您将能够按照上面提到的方式构建链接,并且无需 token 和 alt=media 参数即可访问它们。如果您不想向所有人公开,您可以根据需要随意调整权限。

关于swift - 如何从 Firebase 存储下载 URL 中删除查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58422613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com