Arkadaşlar merhaba,
Delphi 7'de Indy 10 kullanarak XML post işlemi yapıyorum. XML de CData tagı olmasına rağmen Türkçe karakterler bozuk gidiyor. Indy 10'un encoding ayarını bulamadım. Konuyla ilgili yardımınızı rica ediyorum.
Şimdiden teşekkürler.
indy 10 encoding sorunu
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
-
- Üye
- Mesajlar: 2
- Kayıt: 13 Tem 2016 11:57
Re: indy 10 encoding sorunu
Sorunu zor da olsa çözdüm. Buyrun sorunumu çözen kod bloğu
Kod: Tümünü seç
uses
IdSSLOpenSSL;
function TForm1.GETHTTPXML(adres, strMesaj: string): string;
var
AuthNetHTTP: TIdHttp;
AuthNetSSL: TIdSSLIOHandlerSocketOpenSSL;
XMLRequest: TStringStream;
XMLResponse: String;
begin
XMLRequest := TStringStream.Create(strMesaj);
AuthNetHTTP := TidHTTP.Create(nil);
AuthNetSSL := TIdSSLIOHandlerSocketOpenSSL.Create(nil);
AuthNetSSL.SSLOptions.Method := sslvSSLv3;
AuthNetSSL.DefStringEncoding := IndyTextEncoding_UTF8;
AuthNetHTTP.IOHandler := AuthNetSSL;
AuthNetHTTP.Request.ContentType := 'application/xml';
AuthNetHTTP.IOHandler.DefStringEncoding := IndyTextEncoding_UTF8;
AuthNetHTTP.ConnectTimeout := 10000;
AuthNetHTTP.ReadTimeout := 10000;
try
XMLResponse := AuthNetHTTP.Post(adres, XMLRequest, IndyTextEncoding_UTF8);
AuthNetHTTP.Disconnect;
except on e: exception do
Result := '1000';
end;
AuthNetHTTP.Free;
AuthNetSSL.Free;
XMLRequest.Free;
if XMLResponse<>'' then
Result := XMLResponse
else
Result := '1000';
end;