'How to add custom header in NestJS GraphQL Resolver

I want to add custom header in the response of one of my GraphQL resolver Queries in Nestjs. here is the code.

@Query(() => LoginUnion)
    async login(
        @Args({ type: () => LoginArgs }) { LoginInfo: { email, password } } : LoginArgs
    ): Promise<typeof LoginUnion> {
        try {
            let userInfo = await this.userModel.findOne({ email, password: SHA256(password).toString() }, { 'password': false });
            if (userInfo === null) {
                return new CustomErrorResponse({ message: 'Wrong password or username'});
            }
            if (!userInfo.isVerified) {
                return new CustomErrorResponse({ message: 'User in not verified'});
            }
            const token = await this.authentication.sign(userInfo, config.get('Secure_JWT_Sign_Key'));
            // set header here 
            console.log('_DEBUG_ =>', token);
        } catch(error) {
            console.log('user.resolver.login => ', error);
            return new CustomErrorResponse({ message: 'Server Exception', additonalInfo: JSON.stringify(error) });
        }
    }


Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source