HashLoad / jhonson

Middleware for parse JSON in HORSE
MIT License
101 stars 26 forks source link

Acentuação Linux #15

Closed WhebertonFialho closed 8 months ago

WhebertonFialho commented 2 years ago

mesmo configurado o jhonson com "UFT-8" a acentuação esta sendo substituido por "?"

viniciussanchez commented 2 years ago

Está com os fontes atualizados? Qual a versão do Delphi / Lazarus?

WhebertonFialho commented 2 years ago

SIm, ja estou na versao 1.1.4

delphi 10.4

image

WhebertonFialho commented 2 years ago

Bom Dia, Ainda não consegui e ja configurei "utf-8", " ISO-8859-1" e " ISO-8859-15" e mesmo assim ainda nao consegue solucionar;

dliocode commented 1 year ago

Se testar pelo postman, vem com a acentuação errada?

viniciussanchez commented 1 year ago

@WhebertonFialho conseguiu resolver o problema?

CarlosHe commented 1 year ago

Esse erro de acentuação só ocorre com dados que são obtidos do banco de dados?

Preciso de alguns detalhes pra tentar descobrir o que pode ser:

UnisystemGIT commented 1 year ago

Não consegui resolver, para liberar eu retirei todas a acentuação do meu front-end;

Conector FireDAC; Banco de Dados Oracle; Charset Banco/Tabela WE8MSWIN1252; Charset conector UTF-8;

muriloSantanaAraujo commented 9 months ago

Olá, estou com o delphi 10.3 e utilizando as uma das primeiras versão do jhonson e do horse, tive o mesmo problema que a versão delphi. È simples resolve, na versão que estou o System.JSON.TJSonValue.Tojson não converte corretamente o caracters utf8 você precisa utiliza System.JSON.TJSonValue.ToString ;

o jhonson já verifica a compiler version para tratar isso só ajustar para a sua versão : https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Compiler_Versions

no finally do middleware ajustei o compilerVersion ser maior que a minha versão 10.3(33.0) Res.RawWebResponse.Content := {$IF CompilerVersion > 33.0}TJSONValue(Res.Content).ToJSON{$ELSE}TJSONValue(Res.Content).ToString{$ENDIF};

Para o Delphi 10.4 o compilerversion seria 34.0