Implementación del Método POST en Controladores HTTP
Clase 11 de 23 • Curso de Backend con NestJS
Resumen
Así como el verbo HTTP GET se utiliza para la obtención de datos, el verbo HTTP Post se utiliza para la creación de los mismos previamente.
Qué es el método Post
Es el método para creación de datos. Para utilizarlo en Nest.js debemos importar el decorador.
Crear registro con Post
En tu proyecto NestJS, tienes que importar los decoradores Post
y Body
desde @nestjs/common
. El primero para indicar que el endpoint es del tipo POST y el segundo para capturar los datos provenientes del front-end en el cuerpo del mensaje.
import { Controller, Post, Body } from '@nestjs/common';
@Controller()
export class AppController {
@Post('product')
createProducto(@Body() body: any): any {
return {
name: body.name,
price: body.price
};
}
}
Un buen endpoint del tipo POST tiene que devolver el registro completo recientemente insertado en la BBDD para que el front-end pueda actualizarse inmediatamente y no tener que realizar una consulta por el mismo.
Recuerda también que, al tratarse de un endpoint POST, no puedes realizar la solicitud desde el navegador al igual que con los endpoints GET. Para probar tu aplicación, tienes que utilizar una plataforma de APIs como Postman.
import { ..., Post, Body } from '@nestjs/common';
@Controller('products')
export class ProductsController {
...
@Post() // 👈 New decorator
create(@Body() payload: any) {
return {
message: 'accion de crear',
payload,
};
}
}
Contribución creada por: Kevin Fiorentino.