auth.controller.ts
757 Bytes
import { Controller, Request, Post, UseGuards } from '@nestjs/common';
import { AuthService } from './auth.service';
import { AuthGuard } from '@nestjs/passport';
import { clientEncryptBody, privateEncryptBody } from 'src/helpers/encryptor.helper';
import { ApiKeyGuard } from './guards/public-api-key.guard';
@Controller('auth')
export class AuthController {
constructor(private readonly authService: AuthService) { }
@UseGuards(AuthGuard('local'))
@Post('login')
async privateLogin(@Request() req) {
return privateEncryptBody(await this.authService.privateLogin(req.user));
}
@UseGuards(ApiKeyGuard)
@Post('public/login')
async publicLogin(@Request() req) {
return clientEncryptBody(await this.authService.publicLogin());
}
}