Controllers
Controllers in LoopBack 4 handle HTTP requests and define REST endpoints.
Overview
The API has 606+ controllers handling various business domains:
- User management
- Ticket system
- NCR (Non-Conformance Reports)
- Production tracking
- HR operations
- IT management
- And many more...
Controller Basics
A controller is a TypeScript class decorated with @api:
typescript
import { get, post, param, requestBody } from '@loopback/rest';
import { repository } from '@loopback/repository';
import { TicketRepository } from '../repositories';
import { Ticket } from '../models';
@api({ basePath: '/tickets' })
export class TicketController {
constructor(
@repository(TicketRepository)
public ticketRepository: TicketRepository,
) {}
@get('/')
async findAll(): Promise<Ticket[]> {
return this.ticketRepository.find();
}
@get('/{id}')
async findById(@param.path.number('id') id: number): Promise<Ticket> {
return this.ticketRepository.findById(id);
}
@post('/')
async create(@requestBody() ticket: Ticket): Promise<Ticket> {
return this.ticketRepository.create(ticket);
}
}Coming Soon
This page is under construction. More details will be added about:
- Controller structure
- Request/response handling
- Validation
- Error handling
- Best practices
For now, refer to: