AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi idhttp.connect und Proxy
Thema durchsuchen
Ansicht
Themen-Optionen

idhttp.connect und Proxy

Ein Thema von Blo · begonnen am 15. Nov 2006 · letzter Beitrag vom 15. Nov 2006
Antwort Antwort
Benutzerbild von Blo
Blo

Registriert seit: 20. Feb 2005
Ort: Kaarst
90 Beiträge
 
Delphi 11 Alexandria
 
#1

idhttp.connect und Proxy

  Alt 15. Nov 2006, 19:04
Habe folgendes Verständnisproblem:
Meine Anwendung kopiert manchmal eine Datei auf einen Webserver, oder lädt eine Datei vom Server herunter.
Zunächst hatte ich das über Ftp gelöst (Indy 9.0.18 / D5). Klappt alles. Einige Anwender hatten kein Ftp-Zugang also habe ich auch einen Upload bzw. Download über Http eingebaut. Klappt auch alles. Viele Prozeduren sind ja zueinander analog:
idFtp.Connect analog zu idHttp.Connect
idFtp.Connected analog zu idHttp.Connected
idFtp.WorkBegin analog zu idHttp.WorkBegin
usw.

Immer wenn ich etwas hoch- unter herunterladen will, habe ich vorher immer ein idHttp.Connect durchgeführt und anschließend idHttp.Post oder idHttp.Get, so fern der User das Http-Protokoll gewählt hat. Etwa so:
Delphi-Quellcode:
with IDHTTPOT do
  begin
    Host := My.Host;
    ReadTimeOut := My.TimeOut;
  end;
if FHTPID.UseProxy then with IDHTTPOT.ProxyParams do
  begin
    ProxyServer := My.ProxyHost;
    ProxyPassword := My.ProxyPasswort;
    ProxyPort := My.ProxyPort;
    ProxyUserName := My.ProxyUsername;
  end;
try
  IDHTTPOT.Connect;
except
  MessageDlg('HTTP-Verbindung konnte nicht aufgebaut werden!',mtError,[mbOk],0);
end;
Wenn der Zugang über einen Prroxy erfolgen muss, habe ich die Proxy-Einstellungen hinterlegt (siehe oben).
Nur leider funktioniert dann (also im Proxy-Fall)
IDHTTPOT.Connect; nicht mehr, wohl aber z.B. ein anschließendes IDHTTPOT.Post. Ich würde erwarten, dass beide Befehle
funktionieren oder keiner.
Kann mir das jemand erklären?
Ulrich Blomeyer
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: idhttp.connect und Proxy

  Alt 15. Nov 2006, 19:15
Hallo,

wie wird denn der Proxy beim Kunden von anderen Web-Anwendungen (Browser) genutzt? Muss er konfiguriert werden oder ist es ein transparenter Proxy?

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von Blo
Blo

Registriert seit: 20. Feb 2005
Ort: Kaarst
90 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: idhttp.connect und Proxy

  Alt 15. Nov 2006, 20:06
Weis nicht genau was ein transparenter Proxy ist.
Habe folgendes gemacht:
Arbeite in einem Netzwerk mit T-DSL Router und Linux-Server auf dem Squid als Proxy arbeitet (IP: 192.168.0.2).
Um ins Internet muss man den Proxy aber nicht benutzen, er ist nicht verpflichtend, der Router hängt direkt im Netz.
Da ich aber ein Proxy-Testumgebung benötige, habe ich an meinen PC in den Netzwerkeinstellungen die feste IP: 192.168.0.26 und kein Default-Gateway eingestellt.
Ping nach "draussen" klappt nicht. Und in Firefox muss der Proxy angegeben werden, um nach "draussen" zu kommen.
Also habe ich mir gedacht: Auch eine Verbindung mit Hilfe der Indykomp. setzt die Angabe eines Proxys voraus, dass ich also meine Testumgebung habe, was sich ja im Prinzip auch beim Testen so gezeigt hat.

Habe gelesen, dass Http ein verbindungsloses Protokoll ist, dass nach jedem Post oder Get die Verbindung automatisch wieder unterbrochen wird. Warum gibt es dann überhaupt eine idHttp.Connect-Methode? Einfach mitvererbt worden?

Und warum klappt ein Post aber kein Connect, wenn ein Proxy notwendig ist?
Gruss
Ulrich Blomeyer
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: idhttp.connect und Proxy

  Alt 15. Nov 2006, 20:12
Zitat:
Weis nicht genau was ein transparenter Proxy ist.
Einer den man nicht Einstellen muß, sondern der automatsich benutzt wird (Weiterleitung durch Router).

Zitat:
Und warum klappt ein Post aber kein Connect, wenn ein Proxy notwendig ist?
CONNECT ist beim squid standardmäßig verboten.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Blo
Blo

Registriert seit: 20. Feb 2005
Ort: Kaarst
90 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: idhttp.connect und Proxy

  Alt 15. Nov 2006, 20:24
Gut zu wissen. Kann man herausfinden, ob der jeweils eingesetzte Proxy ein connect erlaubt? Seh ich das richtig, dass man "eigentlich" bein Http Up- bzw. Download kein connect benötigt?
Gruss
Ulrich Blomeyer
  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 11:46 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