常用请求方法

  1. GET:用于获取资源。
  2. POST:用于创建资源。
  3. PUT:用于更新资源。
  4. PATCH:用于部分更新资源。
  5. DELETE:用于删除资源。

常用装饰器

  1. @Query:用于获取查询参数。
  2. @Param:用于获取路径参数。
  3. @Body:用于获取请求体中的数据。
  4. @Headers:用于获取请求头中的数据。
  5. @Req:用于获取整个请求对象。
  6. @Res:用于获取整个响应对象。

示例

import { Controller, Request, Headers, Query, Get, Post, Body, Patch, Param, Delete, Put } from '@nestjs/common';
import { DemoService } from './demo.service';
import { log } from 'console';
import { userInfo } from 'os';

@Controller('demo')
export class DemoController {
  constructor(private readonly demoService: DemoService) { }
  //get请求 query传参,格式/list?id=123
  @Get('list')
  getList(@Query() req) {
    return this.demoService.getList(req)
  }
  //动态路由param传承 格式/list/123
  @Get('/list/:id')
  GetOne(@Param('id') req) {
    return this.demoService.findOne(req)
  }
  //post请求 json传参,@Body() req获取body里面的所有参数
  @Post('list')
  create(@Body() req, @Headers() header) {
    //@Body('name') req加参数是获取body里面的name的值
    log(req)
    log(header)//获取请求头@Headers('cookie')加参数是获取请求头里面的cookie的值
    return this.demoService.create(req)
  }
  //put更新请求 param传id,body传内容
  @Put('/list/:id')
  update(@Param('id') id, @Body() info) {
    return this.demoService.update(id, info)
  }
  // delete删除请求 param传id
  @Delete('/list/:id')
  remove(@Param('id') id) {
    return this.demoService.remove(id)
  }
}
最后修改:2024 年 11 月 22 日
如果觉得我的文章对你有用,请随意赞赏