Einzelnen Beitrag anzeigen

Benutzerbild von Minz3
Minz3

Registriert seit: 18. Jul 2019
Ort: Thüringen
48 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#15

AW: Indy 10 HTTP(S) Protokoll

  Alt 27. Jan 2020, 12:38
Hey ho,

danke für das Tutorial, es hat mir gut geholfen!

An einer Stelle stolpere ich allerdings etwas und zwar bei der POST Methode.

Ich hab den Code aus dem Tutorial übernommen und etwas angepasst:
Delphi-Quellcode:
procedure TProgWebAppFrm.HTTPPost(Username : String; Password : String; Database : String);
var
  Params: TStringList;
  Enc: TEncoding;
  ResponseStr: string;

begin
  with TIdHTTP.Create(nil) do
  try
    Request.ContentType := 'application/x-www-form-urlencoded';

    Params := TStringList.Create;
    try
      with Params do
      begin
        Add('username=' + Username);
        Add('password=' + Password);
        Add('database=' + Database);
      end;

      // Request.CharSet vorher setzten: z.B: ISO-8859-1
      Enc := CharsetToEncoding(Request.CharSet);
      try
        // Daten senden
        ResponseStr := Post('https://nb1819157:5001/login?', Params, Enc);
      finally
        Enc.Free;
      end;

    finally
      Params.Free;
    end;
  finally
    Free;
  end;
end;
An folgender Stelle:
Enc := CharsetToEncoding(Request.CharSet); Kommt nun der Fehler, dass die Typen TEncoding und IIdTextEncoding nicht miteinander kompatibel sind. Das verstehe ich soweit auch, aber wie wurde das dann im Tutorial gemacht? Es schien ja so mal funktioniert zu haben. Wurden mit der Zeit Libraries angepasst so das die Inkompabilität jetzt zustande kommt?
Attention:
Brain.exe has stopped working. Reboot the system in 3... 2... 1... ... ... ... Attempt failed.
  Mit Zitat antworten Zitat