stream - 如何设置要在 Koa 响应中下载的文件的名称?

标签 stream koa

我使用node和koa制作了一个图像代理(用于下载未打开的图像)。 url /proxy/image 代码是:

...
const PassThrough = require('stream').PassThrough
let query = qs.parse(url.parse(ctx.request.url).query)
let passThroughStream = new PassThrough()
ctx.body = request(query.src).pipe(PassThrough())
...

下载的图片名称是image,但是我想重命名图片,怎么办?

最佳答案

如果我正确理解您的问题,您应该能够使用 ctx.attachment() 来完成此操作,它是 ctx.response.attachment() 的别名。所以你可以这样做:

ctx.attachment('my-image.png')

这个attachment方法基本上是以下 header 的简写:

ctx.set('Content-disposition', 'attachment; filename=my-image.png');

关于stream - 如何设置要在 Koa 响应中下载的文件的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41671753/

相关文章:

java - 在并行流中获取安全上下文时主体为空

javascript - 使用 koa.js + axios 获取错误消息

typescript - 类型 'User | undefined' 不可分配给类型 'User'

scala - 尝试让惰性评估适用于无限流

iOS 使用基于 Cookie 的身份验证从服务器流式传输音频

javascript - 如何在Koa项目中为Pug添加自定义模板功能?

node.js - 如何使用 Koa 上传文件?

node.js - 我可以在koa中使用 'res'对象吗?

c++ - 调用顺序和副作用

c++ - 清除输入流