首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取图片并使用koa2发送

获取图片并使用koa2发送
EN

Stack Overflow用户
提问于 2020-03-24 20:31:13
回答 1查看 204关注 0票数 1

我正在尝试从外部网址获取图像,然后将其作为响应发送到koa2中。为了获取图像,我使用了Axios库。

我试着用下面的方法来实现:

代码语言:javascript
复制
router.get('/get-image', async (ctx, next) => {
    const {authToken} = ctx.query
    const response = await axiosInstance.get(
        'https://www.someurl.com/image/992',
        {
            headers: {
                Authorization: `Bearer ${authToken}`,
            },
        }
    )

    ctx.type = 'image/jpeg'
    ctx.body = response.data
})

但是我从那个请求中得到的图像是无效的。它只显示空矩形)。

谁能告诉我如何重新发送收到的图像的正确方向?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-27 07:27:42

设置responseType: 'stream'。‘'arraybuffer’也可以,但是'stream‘更好,因为你只需要传递字节。

我相信在默认情况下,axios会解码成一个utf-8字符串,这对于图像二进制数据来说当然是毫无意义的。

代码语言:javascript
复制
const response = await axios.get(url, {
  responseType: 'stream',
  ...
})
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60831122

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档