gpt4 book ai didi

node.js - 无法使用 Node.js 管理 SDK 将 Firebase 存储中的内容处置覆盖为 'inline'

转载 作者:行者123 更新时间:2023-12-03 08:59:41 24 4
gpt4 key购买 nike

我想覆盖默认值 content-disposition: attachment Firebase 存储中的 HTTP header 为 content-disposition: inline用于从我的存储中提供公共(public)图像,这些图像由浏览器打开(如 <a href="..."> 链接)以供查看(未下载)。

重要的默认 header 如下:

content-disposition: attachment
content-type: image/jpeg

默认情况下会下载图像,我认为这是 content-disposition: attachment 强制的,这就是为什么我尝试在 Firebase Admin SDK 中上传期间覆盖它:

bucket.upload(photoUrl, {
destination,
public: true,
metadata: {
contentDisposition: 'inline',
},
}).then((data) =>
console.log(data[1].mediaLink),
);

我清除了存储中的所有图像并使用此代码上传新图像,但我仍然得到 content-disposition: attachment 。也许这是设计使然,也许我的代码是错误的。

图像的 URL 如下所示:https://www.googleapis.com/download/storage/v1/b/MY_PROJECT/o/IMAGE_PATH?generation=SOME_NUMBER&alt=media .

覆盖content-disposition的正确方法是什么?至inline如果可能的话?

相关问题:From firebase storage download file to iframe

更新

在 Chrome devtools 控制台中,我收到警告:“资源被解释为文档,但使用 MIME 类型 image/jpeg 进行传输”。我尝试附加 .jpg扩展至上传的图像目的地,但我仍然收到此警告。

最佳答案

元数据字段称为 Content-Disposition 。您是否尝试过类似以下的操作?

const meta = {};
meta['Content-Disposition'] = 'inline';
bucket.upload(photoUrl, {
destination,
public: true,
metadata: meta,
});

关于node.js - 无法使用 Node.js 管理 SDK 将 Firebase 存储中的内容处置覆盖为 'inline',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51650950/

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