What Are Services and Why They Matter
Pyyhkäise näyttääksesi valikon
Services are responsible for handling business logic in your application.
Instead of placing logic inside controllers, you move it into services to keep your code organized and easier to maintain.
A controller should only:
- Receive the request;
- Call the appropriate service;
- Return the response.
All processing and data handling should happen inside a service.
Here is an example:
import { Injectable } from '@nestjs/common';
@Injectable()
export class UsersService {
getAllUsers() {
return ['Alice', 'Bob'];
}
}
The @Injectable() decorator tells Nest.js that this class can be used as a service.
Now use this service inside a controller:
import { Controller, Get } from '@nestjs/common';
import { UsersService } from './users.service';
@Controller('users')
export class UsersController {
constructor(private usersService: UsersService) {}
@Get()
getUsers() {
return this.usersService.getAllUsers();
}
}
UsersService: contains the logic;UsersController: calls the service;- The controller does not handle data directly.
This separation makes your code cleaner and easier to scale.
Oliko kaikki selvää?
Kiitos palautteestasi!
Osio 1. Luku 9
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Osio 1. Luku 9