小编Kun*_*osh的帖子

如何创建每个 API 通用的 Nest JS API 响应格式?

我是 Nestjs 的新手,并且一直致力于为所有 API 制作一个通用的响应正文。目前,我正在利用地图从集合中获取响应,但不知道如何以下面提到的方式格式化响应。

我目前收到如下响应正文 -

Response body        
        
[         
  {            
    "userId": "602a0f175bbd45688cd001f4",        
    "firstName": "Gagan",  
    "lastName": "Pandya",  
    "email": "gagankumar.pandya@galaxyweblinks.in",  
    "status": "active"  
  },  
  {
    "userId": "603f3b547508bbd77a3d6fb5",    
    "firstName": "Kunal",    
    "lastName": "Ghosh",    
    "email": "kunal.ghosh@galaxyweblinks.in",    
    "status": "active"    
  }    
]
  
Run Code Online (Sandbox Code Playgroud)

需要将其设置为-

{
    "statusCode": 200,   
    "message": "User Listing",   
    "data":[    
  {   
    "userId": "602a0f175bbd45688cd001f4",    
    "firstName": "Gagan",   
    "lastName": "Pandya",   
    "email": "gagankumar.pandya@galaxyweblinks.in",   
    "status": "active"    
  },    
  {    
    "userId": "603f3b547508bbd77a3d6fb5",    
    "firstName": "Kunal",    
    "lastName": "Ghosh",     
    "email": "kunal.ghosh@galaxyweblinks.in",      
    "status": "active"    
  }     
]    
}    
Run Code Online (Sandbox Code Playgroud)

下面是我的控制器代码 -

  @Get('/users-listing')    
  // @UseGuards(AuthGuard('jwt'))    
 // @Roles('Super Admin')    
  @ApiOperation({ title: 'Lists …
Run Code Online (Sandbox Code Playgroud)

javascript node.js nestjs

7
推荐指数
2
解决办法
7556
查看次数

我们如何在 Nestjs 中使用 DTO 中的对象数组和多部分表单数据?

如果我使用 multipart-formdata 并且 DTO 使用包含对象数组的字段,则不允许 formdata 在 swagger DTO 中包含该字段。现在我必须使用邮递员的原始 JSON 选项,但我需要 Nestjs 内置 swagger DTO 的相同实现。

请在下面找到我的控制器代码 -

  @Post('/create')    
  @UseGuards(AuthGuard('jwt'))    
  @ApiBearerAuth()    
  @ApiOkResponse({})     
  @HttpCode(HttpStatus.OK)    
  @ApiOperation({ title: 'Create a project.' })   
  @ApiConsumes('multipart/form-data')   
  @UseInterceptors(FileInterceptor('file'))   
  @ApiImplicitFile({ name: 'image', required: true })   
  @ApiCreatedResponse({})    
    
  async create(@Req() request: Request, @UploadedFile() image: Express.Multer.File,) {    
    const jsonRequest = request.body;    
    if (request['user']) {   
      jsonRequest.createdBy = request['user']._id;    
      jsonRequest.updatedBy = request['user']._id;    
    }    
    const result = await this.projectsService.createProject(jsonRequest, image.buffer,  
   image.originalname, image.mimetype, image.size);    
    return result;   
  }    
Run Code Online (Sandbox Code Playgroud)

请找到我招摇的DTO

import { ApiModelProperty } from '@nestjs/swagger'; …
Run Code Online (Sandbox Code Playgroud)

swagger nestjs

5
推荐指数
1
解决办法
9689
查看次数

标签 统计

nestjs ×2

javascript ×1

node.js ×1

swagger ×1