Codificação de caracteres TIdHTTP da resposta do POST

Tome a seguinte situação:

procedure Test;

var
 Response : String;

begin
 Response := IdHttp.Post(MyUrL, AStream);
 DoSomethingWith(Response);
end;

Agora o servidor da web retorna dados em UTF-8. Suponha que me retorne algum XML UTF-8 contendo o caractereé. Se eu usar a variável Response, ela não contém este caractere, mas é a variante UTF-8 (# C3 # A9), então a Indy não decodificou?

Agora eu sei como resolver esse problema:

procedure Test;

var
 Response : String;

begin
 Response := UTF8ToString(IdHttp.Post(MyUrL, AStream));
 DoSomethingWith(Response);
end;

Uma ressalva com esta solução: O Delphi gera um aviso W1058 (Encadeamento implícito de string com possível perda de dados de 'string' para 'RawByteString')

Minha pergunta: esta é a maneira correta de lidar com esse problema ou posso instruir o TIdHTTP para fazer a conversão para UnicodeString para mim?

questionAnswers(2)

yourAnswerToTheQuestion