文件上传、文件下载都是常见的需求。大文件上传我们会通过分片上传来优化。比如阿里云 OSS 的大文件分片上传:那大文件下载如何优化呢?答案也是分片下载,或者叫流式传输。我们试一下:nest new download-test创建个 Nest 项目。在 AppController 里添加个 download 的路由:import { Controller, Get, Res } from '@nestjs/common';import { AppService } from './app.service';import { Response } from 'express';import * as fs from 'fs';@Controller()export class AppController { constructor(private readonly appService: AppService) {} @Get() getHello(): string { return this.appService.getHello(); } @Get('download') download(@Res() res: Response) { const content = fs.readFileSync('package.json'); res.set('Content-Disposition', `attachment; filename="guang.json"`); res.end(content); }}把服务跑起来:npm run start:dev浏览
………………………………