chore: replaced hardcoded values with env variables in app.module.ts, main.ts and utils.ts

This commit is contained in:
Balu Babu 2023-01-20 07:56:19 +05:30
parent 509604833e
commit a6ad86bd59
6 changed files with 22 additions and 7 deletions

View File

@ -8,6 +8,10 @@ import { AuthModule } from './auth/auth.module';
@Module({
imports: [
GraphQLModule.forRoot<ApolloDriverConfig>({
cors: process.env.PRODUCTION !== 'true' && {
origin: ['http://localhost:3170', 'http://localhost:3000'],
credentials: true,
},
playground: process.env.PRODUCTION !== 'true',
debug: process.env.PRODUCTION !== 'true',
autoSchemaFile: true,

View File

@ -63,8 +63,6 @@ export class AuthController {
async googleAuthRedirect(@Request() req, @Res() res) {
const authTokens = await this.authService.generateAuthTokens(req.user.uid);
if (E.isLeft(authTokens)) throwHTTPErr(authTokens.left);
console.log('google', authTokens);
authCookieHandler(res, authTokens.right, true);
}

View File

@ -22,8 +22,6 @@ export class JwtStrategy extends PassportStrategy(Strategy, 'jwt') {
super({
jwtFromRequest: ExtractJwt.fromExtractors([
(request: Request) => {
console.log('here1', request.cookies);
const ATCookie = request.cookies['access_token'];
if (!ATCookie) {
throw new ForbiddenException(COOKIES_NOT_FOUND);
@ -37,7 +35,6 @@ export class JwtStrategy extends PassportStrategy(Strategy, 'jwt') {
async validate(payload: AccessTokenPayload) {
if (!payload) throw new ForbiddenException(INVALID_ACCESS_TOKEN);
console.log('here', payload);
const user = await this.usersService.findUserById(payload.sub);
if (O.isNone(user)) {

View File

@ -19,8 +19,10 @@ async function bootstrap() {
if (process.env.PRODUCTION === 'false') {
console.log('Enabling CORS with development settings');
app.enableCors({
origin: true,
origin: process.env.WHITELISTED_ORIGINS.split(','),
credentials: true,
});
} else {
console.log('Enabling CORS with production settings');

View File

@ -146,17 +146,31 @@ export const authCookieHandler = (
authTokens: AuthTokens,
redirect: boolean,
) => {
const currentTime = DateTime.now();
const accessTokenValidity = currentTime
.plus({
milliseconds: parseInt(process.env.ACCESS_TOKEN_VALIDITY),
})
.toMillis();
const refreshTokenValidity = currentTime
.plus({
milliseconds: parseInt(process.env.REFRESH_TOKEN_VALIDITY),
})
.toMillis();
res.cookie('access_token', authTokens.access_token, {
httpOnly: true,
secure: true,
sameSite: 'lax',
maxAge: accessTokenValidity,
});
res.cookie('refresh_token', authTokens.refresh_token, {
httpOnly: true,
secure: true,
sameSite: 'lax',
maxAge: refreshTokenValidity,
});
if (redirect) {
res.status(HttpStatus.OK).redirect('http://localhost:3170/graphql');
res.status(HttpStatus.OK).redirect(process.env.REDIRECT_URL);
} else res.status(HttpStatus.OK).send();
};