【问题标题】:aws s3 getSignedUrl InvalidRequestaws s3 getSignedUrl InvalidRequest
【发布时间】:2018-12-03 01:04:12
【问题描述】:

我将图片存储在 s3 存储桶中,这些是私人照片。

目前我可以通过以下方式获取图片网址:

getSignedUrl('getObject', params, callback);

然后我将 url 嵌入到图像 src='' 字符串(快递,哈巴狗)中。但是,我收到无效的请求错误并且没有图像。如何正确获取图像 url 并将它们嵌入到 html 中?

index.js

app.get('/', (req, res) => {
    s3.getSignedUrl('getObject', {
        Bucket: Bucket,
        Key: Key
    }, (err, url) => {
        res.render('index', {
            img: url
        })
    })
})

index.pug

html
    head
        title example
    body
        img(src="" + img)

我只是在学习 AWS SDK。

如何将 s3 图像 URL 从 nodejs 嵌入到 img src?

【问题讨论】:

  • 我可能遗漏了什么,你有什么问题?
  • “我收到无效请求错误”请提供此类错误响应的示例。

标签: node.js amazon-web-services amazon-s3


【解决方案1】:

我想出了一个解决方案。而不是尝试将实际的 url 嵌入到 s3 存储桶和对象到 pug 渲染中。我有一个单独的图像获取,它返回字节流本身:

app.get('/img.jpg', (req, res) => {
    s3.getObject({...}, (err, data) => {
        ...
        res.send(data.Body)
    })
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-09-03
    • 2017-02-23
    • 2021-06-17
    • 2021-08-03
    • 1970-01-01
    • 2021-08-09
    • 2015-05-16
    • 2021-07-11
    相关资源
    最近更新 更多