Pessoal, quando dá erro de schema xml, é apresentado uma mensagem de erro amigável e uma outra com mais detalhes, só que em inglês.
Eu quero formatar a mensagem que apresento para o meu usuário com o máximo de informação possível e em Português.
Exemplo de mensagem retornada:
TAG:<emit><enderEmit> ID:C06/xLgr(Logradouro) - Tamanho maior que o máximo permitido [RUA BELO HORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTE].
--> 1832 - Element '{http://www.portalfiscal.inf.br/nfe%7DxLgr': [facet 'maxLength'] The value has a length of '108'; this exceeds the allowed maximum length of '60'.
Exemplo de mensagem que pretendo retornar ao meu usuário:
{
"message": "Erro Schema 1832: O campo 'xLgr' (Logradouro) da tag '<emit> <enderEmit>' apresentou o seguinte problema: 'Tamanho maior que o máximo permitido [RUA BELO HORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTEHORIZONTE]. Tamanho máximo: 60'. Por favor, revise os dados informados.",
"error": "Bad Request",
"statusCode": 400
}
Estou utilizando regex para pegar alguns dados, mas o maior problema é que existe erro de schema para tamanho mínimo, máximo, enumeradores, tipos e etc.
Teria alguma forma mais fácil para eu abranger todos os erros possíveis do schema de forma a capturar os dados e formatar eles para apresentar ao meu usuário?
Linguagem de programação utilizada: Node.js - Nest.js