Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Defining Routes and Endpoints | Controllers and Routing
Building Backend Applications with Nest.js

bookDefining Routes and Endpoints

Swipe to show menu

Routes define how your backend responds to different requests. Each route is connected to a specific HTTP method and path.

In Nest.js, routes are created inside controllers using decorators.

Here is an example:

import { Controller, Get, Post } from '@nestjs/common';

@Controller('users')
export class UsersController {
  @Get()
  getAllUsers() {
    return 'Get all users';
  }

  @Post()
  createUser() {
    return 'Create user';
  }
}

  • @Controller('users'): sets the base route;
  • @Get(): handles GET requests to /users;
  • @Post(): handles POST requests to /users.

Each method inside the controller becomes an endpoint.

You can also define routes with additional paths:

@Get('profile')
getProfile() {
  return 'User profile';
}

This creates the route:

/users/profile

Each route responds to a specific combination of:

  • HTTP method;
  • URL path.

This allows you to define different behaviors for the same route depending on the request type.

question mark

Which decorator would you use to handle HTTP POST requests in a Nest.js controller?

Select the correct answer

Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 2. Chapter 3

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Section 2. Chapter 3
some-alt