我有一个公共存储桶,用于托管公共用户内容。
我想通过单击链接打开gcp页面,使用户能够下载那些文件,该页面会自动开始下载。为此,需要设置内容处理标头。
我还想设置下载文件的文件名。
是否可以在gcp中处理此问题?
我知道我可以生成一个签名的URL:Google Cloud Storage: download a file with a different name,并设置所需的标题,但是我认为这不是合适的解决方案。据我了解,访问受保护的资源时应使用签名的URL。有没有一种方法可以轻松获取下载链接?
我目前在自己的服务器上处理此问题,但我想让gcp处理它。 这是云文件的演示URL:https://storage.googleapis.com/just-demo-bucket-14512/Big_Buck_Bunny_1080_10s_5MB.mp4
router.get('/download', (req, res) => {
res.setHeader("content-disposition", "attachment; filename=cool.mp4");
request('https://storage.googleapis.com/just-demo-bucket-14512/Big_Buck_Bunny_1080_10s_5MB.mp4').pipe(res);
})
答案 0 :(得分:1)
如果您想动态设置content-disposition标头,换句话说:
https://storage.googleapis.com/path/to/file?content-disposition=...
那么答案是否定的;你不能这样做。
如果要静态分配内容,可以使用Cloud Storage的标题,但是如果要动态添加,则必须在其前面放置服务器。
但是,如果您强烈认为这必须由Cloud Storage API处理,则可以通过指定应如何实施以及该附加值来提出feature request。