AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen FreePascal lNet HTTP Client Authentifizierung
Thema durchsuchen
Ansicht
Themen-Optionen

lNet HTTP Client Authentifizierung

Ein Thema von divBy0 · begonnen am 11. Okt 2010 · letzter Beitrag vom 30. Okt 2010
Antwort Antwort
Benutzerbild von divBy0
divBy0

Registriert seit: 4. Mär 2007
Ort: Sponheim
1.021 Beiträge
 
Delphi XE2 Professional
 
#1

lNet HTTP Client Authentifizierung

  Alt 11. Okt 2010, 13:13
Hallo zusammen,

ich habe gerade ein Problem mit der lNet HTTPClientComponent unter Lazarus. Die Zielplattform ist WinCE.

Es soll ein Bild von einem Webserver mit Authentifizierung geladen werden, allerdings scheint der HTTPClient von lNet keine Authentifizierung zu unterstützen oder ich habe es einfach übersehen bis jetzt.

Gibt es evtl. Alternativen für den HTTP-Client (muss aber WinCE unterstützen)?
Marc
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt, die 10. summt die Melodie von Tetris... | Wenn das die Lösung ist, dann hätte ich gerne mein Problem zurück! | engbarth.es
  Mit Zitat antworten Zitat
Benutzerbild von divBy0
divBy0

Registriert seit: 4. Mär 2007
Ort: Sponheim
1.021 Beiträge
 
Delphi XE2 Professional
 
#2

AW: lNet HTTP Client Authentifizierung

  Alt 13. Okt 2010, 10:06
Bis jetzt habe ich noch keine Lösung zur Authentifizierung mit lNet gefunden. Bei der aktuellen Anwendung wird das eigentlich auch nicht gebraucht, ich konnte die Authentifizierung am Server (IP-Cam) abschalten.
Marc
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt, die 10. summt die Melodie von Tetris... | Wenn das die Lösung ist, dann hätte ich gerne mein Problem zurück! | engbarth.es
  Mit Zitat antworten Zitat
Benutzerbild von JamesTKirk
JamesTKirk

Registriert seit: 9. Sep 2004
Ort: München
604 Beiträge
 
FreePascal / Lazarus
 
#3

AW: lNet HTTP Client Authentifizierung

  Alt 30. Okt 2010, 14:37
Hi!

Ist jetzt zwar schon ein paar Tage her und ich weiß auch nicht, ob das genau das ist was du brauchst, aber in einer (mittlerweile schon älteren) Windows Mobile Anwendung von mir hab ich das folgendermaßen gelöst:

Delphi-Quellcode:
uses
  base64;

function TFormMain.GetAuthorization(const aName, aPassword: String): String;
var
  sStream: TStringStream;
  base64enc: TBase64EncodingStream;
  i: Integer;
begin
  { da ich Base64 Kodierung verwende, müssen Benutzername und Passwort natürlich noch
    entsprechend kodiert werden }

  if (aName <> '') and (aPassword <> '') then begin
    Result := aName + ':' + aPassword;

    sStream := TStringStream.Create('');
    try
      base64enc := TBase64EncodingStream.Create(sStream);
      try
        for i := 1 to Length(Result) do
          base64enc.Write(Result[i], SizeOf(Char));
      finally
        FreeAndNIL(base64enc);
      end;

      sStream.Seek(0, soFromBeginning);

      Result := sStream.ReadString(sStream.Size);
    finally
      FreeAndNIL(sStream);
    end;
  end else
    Result := '';
end;

procedure TFormMain.DownloadData(const aFile: String);
var
  AuthString: String;
begin
  AuthString := GetAuthorization(Options.Name, Options.Password);

  { da lNet Authentifizierung nicht als Eigenschaft hat, muss diese manuell
    angegeben werden. Hier hilft es sich über das HTTP Protokoll zu informieren }

  if AuthString <> 'then
    HTTPClient.AddExtraHeader('Authorization: Basic ' + AuthString);

  { andere Eigenschaften des HTTPClient setzen }

  HTTPClient.SendRequest;
end;
Gruß,
Sven
Sven
[Free Pascal Compiler Entwickler]
this post is printed on 100% recycled electrons
  Mit Zitat antworten Zitat
Benutzerbild von divBy0
divBy0

Registriert seit: 4. Mär 2007
Ort: Sponheim
1.021 Beiträge
 
Delphi XE2 Professional
 
#4

AW: lNet HTTP Client Authentifizierung

  Alt 30. Okt 2010, 22:30
Hey,

danke für den Beispiel-Code! Habe gerade kein MP277 zum Testen griffbereit, werde es aber bei Gelegenheit versuchen.
Marc
9 von 10 Stimmen in meinem Kopf sagen ich bin nicht verrückt, die 10. summt die Melodie von Tetris... | Wenn das die Lösung ist, dann hätte ich gerne mein Problem zurück! | engbarth.es
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz