AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi WhoIs-Abfrage / Anmelden auf Website
Thema durchsuchen
Ansicht
Themen-Optionen

WhoIs-Abfrage / Anmelden auf Website

Ein Thema von Harry M. · begonnen am 2. Aug 2006 · letzter Beitrag vom 2. Aug 2006
Antwort Antwort
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#1

WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 11:46
Mahlzeit!
Ich möche eine WhoIs-Abfrage über www.domaintools.com realisieren. Dazu will ich mich mit meinen Logindaten dort anmelden.
Delphi-Quellcode:
  Http := TIdHttp.Create(nil);
  Http.HandleRedirects := True;

  slParam := TStringList.Create;
  slParam.Add('email=username');
  slParam.Add('key=**********');

  Memo1.Text := Http.Post('http://www.domaintools.com/login', slParam); // Anmelden
  AnsiStr := Http.Get('http://whois.domaintools.com/84.183.120.139');// Abfrage
  
  // ...
  // Freigabe der Objekte
  // Auwertung von AnsiStr
Ich bekomme aber die Meldung  Wert für IOHandler ist ungültig und ohne Http.HandleRedirects := True; kommt  HTTP/1.1 301 Moved Permanently

Was mach ich den verkehrt?
Und was bedeutet Http 1.1 / 301 ??
Harry
Gruß Harry
www.H-Soft.info
  Mit Zitat antworten Zitat
kabuco
(Gast)

n/a Beiträge
 
#2

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 12:13
Hallo,

erstmal HTTP 1.1 / 301: 1.1 ist die HTTP Version, die der Server verwendet. 301 ist eine Statusmeldung, die der Server meldet, wenn etwas passiert ist. 301 Moved Permanently bedeutet, dass die Seite auf diesem Server nicht mehr verfügbar is6t. Meistens steht im Browser dann auhc noch dabei, wohin diese seite umgezogen ist. Hier kannst du die Statusmeldungen nochmal nachlesen: Link

Dann zu deinem anderen Problem: Vielleicht hilft dir das hier:

Delphi-Quellcode:
function SendPostData(Ahttp: TIdHTTP; const AtoURL: String; const aParams: TStrings): String; //Funktion zum senden von Postdaten mit den Indys
  //Ahttp: Die HTTP Komponente von Indy 8.0 bzw. 9.0
  //AtoURL: An diese URL werden die Informationen gesendet
  //Result: HTML-Ergebnis (Antwort des Scripts)
Var
  lStream: TMemoryStream; //HTML-Result des PHP-Scripts
  lParams: TStringStream;
  I: Integer;
begin
  Result:='';
  if not Assigned(aHttp) then
    exit;
  lStream := TMemoryStream.create;
  lParams := TStringStream.create('');
  try
    AHTTP.Request.ContentType := 'application/x-www-form-urlencoded';

    //Dieser Stream wird letztendlich gesendet
    //Stream mit Werten füllen
    for I:=0 to aParams.Count-1 do
      lParams.WriteString(aParams[I] + '&');

    try
      //Stream an das PHP-Script senden
      AHTTP.Post(AtoURL,
                 lParams,
                 lStream);
    except
      on E: Exception do
        showmessage('Fehler bei der Übertragung: ' + E.Message);
    end;
    SetLength(Result,lStream.Size);
    lStream.Position:=0;
    lStream.ReadBuffer(Result[1],lStream.Size);
  finally
    lParams.Free;
    lStream.Free;
  end;
end;

procedure SendHighscore; //So wird die Funktion aufgerufen
var
  sList: TStringlist;
  URI: TidURI;
begin
  sList:=TStringList.Create;
  try
    URI := TIdURI.Create('');
    sList.Add(IdURI.TIdURI.ParamsEncode('email=********'));
    sList.Add(IdURI.TIdURI.ParamsEncode('key=*********'));
    Memo1.Text:=SendPostData(idHttp1,'http://www.domaintools.com/login',sList);
  finally
    sList.Free;
  end;
end;
Gruß kabuco
  Mit Zitat antworten Zitat
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#3

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 12:31
Die Meldung (301) bleibt die gleiche. Aber bin schon mal schlauer wie vorher
Harry
Gruß Harry
www.H-Soft.info
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.058 Beiträge
 
Delphi 12 Athens
 
#4

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 12:47
HandleRedirects war doch (glaub ich) dafür da, daß Weiterleitungen erlaubt sind ... also das man erlaubt, daß die Aufgerufene URL einen auf 'ne andere Adresse weiterleitet(redirectet )

Das 301 deutet jetzt vermutlich daruf hin, daß zwar vom Server gesagt wird, daß die gewünschte Seite jetzt woanders ist, aber vielleicht nicht wo, so daß nicht da hingeleitet werden kann.


Hast du mal dir die Adressen direkt im Browser angesehn?

Eventuell mal die 2. URL aufrufen, ohne vorherige Anmeldung mit der Ersten.


's könnte sein, daß Indy die Anmelde-Coockies nicht an den 2. Aufruf übergibt (vielleich muß man das ja auch selber noch machen), so daß du da garnicht angemeldet bist und auf 'ne Sie-Sind-Nicht-Angemeldetseite weitergeleitet wirst.


Man könnte auch mal beim Seitenbetreiber anfragen, ob solch direkte anfragen überhaupt erlaubt und nicht vielleicht irgendwie gesperrt sind, oder ob es nicht andere Wege gibt...
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#5

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 13:48
Habe den Code auf anraten mal etwas umgebaut. Einen CookieMgr ist schon drinne sowie SSL.
Delphi-Quellcode:

 Http := TIdHttp.Create(nil);
 // SendHighscore;
 Http.HandleRedirects := True;
 Http.CookieManager := IdCookieManager1;
 Http.IOHandler := IdSSLIOHandlerSocket1;
 Http.Port := 443;

  slParam := TStringList.Create;
  slParam.Add('email=*****');
  slParam.Add('key=******');
  slParam.Add('r=http://www.domaintools.com/members');
  slParam.Add('go=1');
  slParam.Add('ts=0');
  slParam.Add('psession=forever');

  Memo1.Text := Http.Post('https://www.domaintools.com/login', slParam);

  AnsiStr := Http.Get('http://whois.domaintools.com/84.183.120.139');
Aber ich bekomme jetzt die Meldung

---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Project1.exe ist eine Exception der Klasse EIdOSSLCouldNotLoadSSLLibrary aufgetreten. Meldung: 'SSL.-Bibliothek konnte nicht geladen werden.'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK Hilfe
---------------------------

Habe mir den SSLBuddy bei Indy geholt. Und immer noch ratlos
Harry
Gruß Harry
www.H-Soft.info
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 14:44
Hast Du nicht die openSSL Dll's installiert?
Habe sie mal angehängt.

Grüße
Klaus
Angehängte Dateien
Dateityp: zip openssl_098a_901.zip (636,9 KB, 25x aufgerufen)
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#7

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 16:08
Oh danke. Aber Meldung bleibt. Kann die DLL nicht finden / Laden. Habe sie im Arbeitsverzeichnis und System32-Verzeichnis. Nix
Harry
Gruß Harry
www.H-Soft.info
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 16:24
Hallo,

kannst Du mal die angehängte auch noch probieren.
Was für eine Indy Version hast denn Du?

Grüße
Klaus
Angehängte Dateien
Dateityp: zip indy_openssl096g_666.zip (371,7 KB, 24x aufgerufen)
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Harry M.
Harry M.

Registriert seit: 29. Okt 2004
Ort: Halle
462 Beiträge
 
#9

Re: WhoIs-Abfrage / Anmelden auf Website

  Alt 2. Aug 2006, 19:52
Alles beim alten.

---------------------------
Project1
---------------------------
HTTP/1.1 301 Moved Permanently.
---------------------------
OK
---------------------------

Von wegen: Früher war alles besser!

Ich nutzer Indy 9.
Harry
Gruß Harry
www.H-Soft.info
  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 04:52 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