Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende What Are Services and Why They Matter | Section
Building Backend Applications with Nest.js

bookWhat Are Services and Why They Matter

Desliza para mostrar el menú

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.

question mark

What is the main purpose of a service in Nest.js?

Selecciona la respuesta correcta

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 9

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Sección 1. Capítulo 9
some-alt