Tengo un servicio de traducción que traduce las cadenas lanzadas como una excepción HTTP. Funciona bien cuando no se lanza dentro de un try{...} catch{...} block . Pero funciona fuera de eso.
async getEmployeeByEmail(emailRaw: string): Promise<Employee> { try { const employee = await this.employeeRepository.findOne({ relations: ['buildingAssignedAsLead'], where: { email: emailRaw, }, }); if (!employee) { return null; } return employee; } catch (err) { throw new HttpException( 'translations.EMAILS.INVALID_EMAIL', HttpStatus.BAD_REQUEST, ); } } Tengo un filtro de respuesta de excepción que traduce el mensaje en función de 'translations.EMAILS.INVALID_EMAIL' pero al acceder a la respuesta de la excepción, no obtiene la misma cadena.
Y por lo tanto no se puede traducir. Cuando lanzo httpException dentro de un bloque catch, obtengo una excepción para ser un objeto como:
{status: ..., message: Invalid Email, ...} y cuando no se lanza dentro de un bloque catch, aparece como translations.EMAILS.INVALID_EMAIL
¿Qué se puede hacer para que el bloque catch envíe la misma respuesta?
está pasando un correo electrónico que no está presente en su base de datos. pasar correo electrónico válido que presente en su base de datos.