gpt4 book ai didi

javascript - 获得两者 - 下载链接和链接以使用 aws sdk 从 s3 存储桶在浏览器中查看

转载 作者:太空狗 更新时间:2023-10-29 19:33:41 25 4
gpt4 key购买 nike

我想从 s3 存储桶中获取的图像有两个目的:

  1. 可供下载
  2. 使用 google maps api for javascript 覆盖在 google maps 上

对于第二个目的,需要有一个显示在浏览器中的图像链接,如文档中所示: https://developers.google.com/maps/documentation/javascript/examples/groundoverlay-simple

   var historicalOverlay = new google.maps.GroundOverlay(
'https://www.lib.utexas.edu/maps/historical/newark_nj_1922.jpg',
imageBounds);
historicalOverlay.setMap(map);

但我还想要一个链接,用户可以从该链接下载图像。

我使用预签名 URL 来获取图像文件的 URL,方法是使用以下代码:

const url = s3.getSignedUrl('getObject', {
Bucket: myBucket,
Key: myKey,
Expires: signedUrlExpireSeconds,

})

我读到,如果我希望链接显示在浏览器中而不是被下载,那么我必须将 contentType 设置为 image/png。但如果我这样做,那么我将无法获得下载链接。

我想知道是否有办法同时完成这两项任务。

我在这个项目中使用带有 nodeJs 后端的 Angular 4。

提前致谢!

最佳答案

您可以使用 getObject 函数的 ResponseContentType 参数设置响应的内容类型:

const url = s3.getSignedUrl('getObject', {
Bucket: myBucket,
Key: myKey,
Expires: signedUrlExpireSeconds,
ResponseContentType: "image/png",

})

关于javascript - 获得两者 - 下载链接和链接以使用 aws sdk 从 s3 存储桶在浏览器中查看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48065614/

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