Görev Oluşturma
Coddy'nin Node.js Journey'sinin TypeScript ve NestJS bölümünün bir parçası. Ders 4 / 17.
Bir görev oluşturan istemci, görevi istek gövdesinde JSON olarak gönderir ve kaydedilen görevin kendisine geri gönderilmesini ister.
@Post()
create(@Body() review: { stars: number }) {
this.reviews.push(review);
return review;
}@Post(), denetleyicinin yolundaki POST isteğini yönteme yönlendirir ve @Body(), ayrıştırılmış JSON'u yönteme iletir. Nest, JSON gövdelerini kendisi okur; bu nedenle eklenmesi gereken bir express.json() yoktur.
Nest, bir POST isteğini yeni bir kaynağın var olduğunu belirten durum kodu olan 201 Created ile, diğer tüm yöntemleri ise 200 ile yanıtlar. Yönteme eklenen @HttpCode(200) bunu değiştirir; yeni bir kaynak oluştururken olduğu gibi bırakın.
Görev
KolayPOST /tasksisteği,{ "title": "Buy milk" }ile yeni görevi yanıt olarak 201 koduyla döndürür: yeni biridnumarası,titlevedone: false.GET /tasks/:idisteği görevi daha sonra bulur.- Bu isteği gönderin, ardından
{}ilePOST /tasksisteğini gönderin ve neyin kaydedildiğini görün.
Kendin dene
import { Controller, Get, Param, Query } from '@nestjs/common';
interface Task {
id: number;
title: string;
done: boolean;
}
@Controller('tasks')
export class TasksController {
private tasks: Task[] = [
{ id: 1, title: 'Write the README', done: true },
{ id: 2, title: 'Fix the login bug', done: false },
{ id: 3, title: 'Plan the sprint', done: false },
];
@Get()
findAll(@Query('done') done?: string): Task[] {
if (done === undefined) {
return this.tasks;
}
return this.tasks.filter((task) => task.done === (done === 'true'));
}
@Get(':id')
findOne(@Param('id') id: string): Task | undefined {
return this.tasks.find((task) => task.id === Number(id));
}
}
TypeScript ve NestJS bölümündeki tüm dersler
1Nest Temelleri
Merhaba, NestRota Parametreleri