Nemáte někdo zkušenost jak nastavit HTTPRIO pro práci s webovými službami IS DMVS (Digitální mapa veřejné správy).
Pokud v odpovědi je i část s
Content-Type: application/zip
Content-Transfer-Encoding: binary
tak volání služby končí chybou "No mapping for the Unicode character exists in the target multi-byte code page"
Například služba R9-CtiVysledekEditujDti nebo R24a-CtiVerziJvf
Pokud v odpovědi jsou pouze části s
Content-Type: application/xop+xml; charset=utf-8; type="text/xml"
tak se chyba neobjeví.
object HTTPRIO1: THTTPRIO
HTTPWebNode.SecureProtocols = [SSL3, TLS1, TLS11, TLS12, TLS13]
Converter.Options = [soSendMultiRefObj, soTryAllSchema, soRootRefNodesToBody, soUTF8InHeader, soCacheMimeResponse]
end
Pokud do HTTPRIO1.Converter.Encoding dám UTF-8 nebo nic, tak se to chová stejně.
Pokud do HTTPRIO1.Converter.Encoding dám něco jiného například ANSI, tak to nejde vůbec.
var
I, O: TRemotable;
begin
I := CtiVerziJvf.Create;
with CtiVerziJvf(I) do begin
Hlavicka := R24aCteniCiselniku_v11.DmvsZadostHlavicka.Create;
UID := 'E555A197-4C72-4AE5-ABB0-1697881E62F2';
Data := R24aCteniCiselniku_v11.CtiVerziJvfData.Create;
end;
O := WSR24a.ctiVerziJvf(CtiVerziJvf(I)); //zde to skončí na EEncodingError
end;
Testováno v Delphi XE6 a Delphi 11
Děkuji za rady