Was ist der einfachste Weg, um eine HTTPS-POST-Anfrage in Delphi zu machen? Ich habe keine Probleme mit HTTP-POST-Anfragen, aber wie kann ich das mit SSL machen? Ich habe gegoogelt und nichts gefunden, was das gut genug erklärt.Wie man eine HTTPS POST Anfrage in Delphi macht?
Hier ist der Code, den ich versuchte:
procedure TForm1.FormCreate(Sender: TObject);
var
responseXML:TMemoryStream;
responseFromServer:string;
begin
responseXML := TMemoryStream.Create;
IdSSLIOHandlerSocketOpenSSL1 := TIdSSLIOHandlerSocketOpenSSL.Create(self);
with idSSLIOHandlerSocketOpenSSL1 do
begin
SSLOptions.Method := sslvSSLv2;
SSLOptions.Mode := sslmUnassigned;
SSLOptions.VerifyMode := [];
SSLOptions.VerifyDepth := 0;
host := '';
end;
IdHTTP1 := TIdHTTP.Create(Self);
with IdHTTP1 do
begin
IOHandler := IdSSLIOHandlerSocketOpenSSL1;
AllowCookies := True;
ProxyParams.BasicAuthentication := False;
ProxyParams.ProxyPort := 0;
Request.ContentLength := -1;
Request.ContentRangeEnd := 0;
Request.ContentRangeStart := 0;
Request.Accept := 'text/html, */*';
Request.BasicAuthentication := False;
Request.UserAgent := 'Mozilla/3.0 (compatible; Indy Library)';
HTTPOptions := [hoForceEncodeParams];
end;
responsefromserver := IdHTTP1.Post('https://.../','name1=value1&name2=value2&....');
end;
Wenn ich versuche, es mir folgende Fehlermeldung erhalten auszuführen:
Project myProject.exe raised exception class EFOpenError with message 'Cannot open file "C:\...\Projects\Debug\Win32\name1=value1name2=value2 The system cannot find the file specified'.
Ich verstehe das nicht. Ich habe Parameter gesendet, obwohl die Fehler so klingen, als hätte ich eine Datei gesendet.
Auch habe ich Libeay32.dll und ssleay32.dll in meinem Ordner myProject.exe enthalten.
Haben Sie jemals eine Lösung gefunden? –