Importante

jueves, 11 de mayo de 2023

nest controladores

 

El controlador sirve para enrutar las peticiones en los empoin

se crean por el comando nest g co nombre_del_controlador

ejemplo:

mest g co twits

se creará una carpeta twits con el controador 


import {
  Body,
  Controller,
  Delete,
  Get,
  HttpCode,
  HttpStatus,
  Param,
  Patch,
  Post,
  Query,
} from '@nestjs/common';

// controlador  sierve para enrrutar
@Controller('twits')
export class TwitsController {
  //@Get es un decorador que sirve para ordenar los llamados get
  //el decorador query sirve para pasar parametros filtrados
  @Get()
  getTwits(): string {
    return `está trayendo los twits`;
  }
  @Get()
  getTwitsFilter(@Query() filterQuery): string {
    // para establecerel filtro de busqueda
    const { searchTerm, orderBy } = filterQuery;
    return `tu ${searchTerm} está oredenado por ${orderBy}`;
  }
  //@param puede recibir parametros por la url
  @Get(':id')
  // los para,etros siempre vinen como string aunque sean numeros
  getTwit(@Param('id') id: string): string {
    return `your twits is : ${id}`;
  }
  @Post()
  //para colocar el estado de la respuesta htth
  @HttpCode(HttpStatus.NO_CONTENT)
  //@Body recibe la información del cuerpo de la peticipn http post
  createTwit(@Body('menssage') menssage: string): string {
    return `your twits was: ${menssage}`;
  }
  @Patch(':id')
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
  updateTwit(@Param('id') id: string, @Body() twit: string): string {
    return `the tuwts have been updated: ${id}`;
  }
  @Delete(':id')
  deleteTwit(@Param('id') id: string): string {
    return `have been deleted: ${id}`;
  }
}

0 comentarios:

Publicar un comentario