HashLoad / horse

Fast, opinionated, minimalist web framework for Delphi
MIT License
1.15k stars 217 forks source link

Erro acentuação com uso do Middleware Compression #334

Closed RichIgor closed 1 year ago

RichIgor commented 1 year ago

Olá equipe Hashload, deparei com o seguinte problema e após alguns testes descobri que a causa é quando uso o middleware Compression.

Fiz um pequeno exemplo para ilustrar o problema:

THorse.Get('/ping',
    procedure(Req: THorseRequest; Res: THorseResponse; Next: TProc)
    begin
      Res.Send('éçã');
    end);

Sem uso do Compression - Resultado Correto

THorse
     .Use(CORS)
     .Use(HorseJWT(chaveHorse, THorseJWTConfig.New.SkipRoutes(['/login'])))
     //.Use(Compression(1))
     .Use(Jhonson())
     .Use(HandleException);

image

Com uso do Compression - Falha

THorse
     .Use(CORS)
     .Use(HorseJWT(chaveHorse, THorseJWTConfig.New.SkipRoutes(['/login'])))
     .Use(Compression(1))
     .Use(Jhonson())
     .Use(HandleException);

image

dliocode commented 1 year ago

Abra uma ISSUES no https://github.com/HashLoad/horse-compression

dliocode commented 1 year ago

@RichIgor, fiz o ajuste Horse-Compression - #13

RichIgor commented 1 year ago

Obrigado @dliocode!

Perdão por não abrir a issue no https://github.com/HashLoad/horse-compression, vou manter aqui a resposta apenas para não duplicar!

Quando o retorno é json esta realmente resolvido, entretanto em retorno text ocorre o mesmo problema!

Abraços!

dliocode commented 1 year ago

O ajuste que eu fiz ali, vai resolver.. Qualquer coisa só avisar, vou fechar a issue!