Pentru a evita scrierea repetitivă de cod de tipul req.ip sau req.session, NestJS oferă decoratoare dedicate gata integrate în pachetul standard:
@Ip(): Extrage automat adresa IP a clientului apelant (respectând configurareatrust proxydacă aplicația rulează în spatele unui Reverse Proxy Nginx sau AWS ALB).@Session(): Prelucrează obiectul de sesiune gestionat deexpress-session.@HostParam('subdomain'): Extrage segmentele dinamice din numele de gazdă atunci când controllerul este configurat pentru routing pe bază de subdomeniu (multi-tenancy).
Exemplu: Logging adresă IP și routing pe bază de subdomeniu
import { Controller, Get, Ip, HostParam } from '@nestjs/common';
@Controller({ host: ':tenant.dexblog.ro' })
export class TenantController {
@Get('info')
getTenantInfo(
@HostParam('tenant') tenant: string,
@Ip() clientIp: string,
) {
return {
tenantSubdomain: tenant,
accessedFromIp: clientIp,
timestamp: new Date().toISOString(),
};
}
}
Întrebări & Exemple de Cod:
@Ip(), @Session() și @HostParam() în NestJSAi o nelămurire despre utilizarea comenzii
@Ip(), @Session() și @HostParam() în NestJSsau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.