16 Star 272 Fork 97

kapok/nest-admin

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
oss.controller.ts 1.70 KB
一键复制 编辑 原始数据 按行查看 历史
import { Controller, Get, Post, UploadedFile, UseInterceptors, Query, HttpCode, Body, Req } from '@nestjs/common'
import { FileInterceptor } from '@nestjs/platform-express'
import { ApiTags, ApiOperation, ApiConsumes, ApiBody, ApiBearerAuth } from '@nestjs/swagger'
import { ResultData } from '../../common/utils/result'
import { OssService } from './oss.service'
import { FindOssDto } from './dto/find-oss.dto'
import { ApiResult } from '../../common/decorators/api-result.decorator'
import { OssEntity } from './oss.entity'
@ApiTags('文件存储')
@ApiBearerAuth()
@Controller('oss')
export class OssController {
constructor(private readonly ossService: OssService) {}
@Post('upload')
@ApiOperation({ summary: '文件上传,返回 url 地址' })
@ApiConsumes('multipart/form-data')
@ApiBody({
schema: {
type: 'object',
properties: {
file: {
description: '文件',
type: 'string',
format: 'binary',
},
business: {
description: '上传文件描述,可以是纯字符串,也可以是JSON字符串',
type: 'string',
format: 'text',
},
},
},
})
@HttpCode(200)
@UseInterceptors(FileInterceptor('file'))
@ApiResult(OssEntity)
async uploadFile(
@UploadedFile() file: Express.Multer.File,
@Body() params: { business: string },
@Req() req,
): Promise<ResultData> {
return await this.ossService.create([file], params.business || '', req.user)
}
@Get('list')
@ApiOperation({ summary: '查询文件上传列表' })
@ApiResult(OssEntity, true, true)
async findList(@Query() search: FindOssDto): Promise<ResultData> {
return await this.ossService.findList(search)
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
TypeScript
1
https://gitee.com/wenqiyun/nest-admin.git
git@gitee.com:wenqiyun/nest-admin.git
wenqiyun
nest-admin
nest-admin
dev

搜索帮助