Lista može prikazati stotinu proxyja dok TIdHTTP nastavlja koristiti isti. Odabir retka mijenja sučelje; sljedeći zahtjev mijenja rutu tek nakon što odabrana krajnja točka stigne u konfiguraciju HTTP klijenta.

Za javna HTTP preuzimanja, unosi s popisa HTTP proxyja mogu pružiti kandidatne krajnje točke. Iza svakog prikazanog unosa držite host i cjelobrojni port. Kad se odabir prihvati, primijenite oboje prije pokretanja preuzimanja:

IdHTTP1.ProxyParams.ProxyServer := ChosenHost;
IdHTTP1.ProxyParams.ProxyPort := ChosenPort;
Page := IdHTTP1.Get(TargetURL);

Ovaj ulomak pretpostavlja mirovanje klijenta, provjerenu krajnju točku i postojeće varijable aplikacije. Ciljni URL ostaje web-mjesto. Polje hosta proxyja prima host, a ne URL web-mjesta ni oznaku prikaza.

Odabir treba tri moguća ishoda

  • Valjan odabir proxyja daje host i port od 1 do 65535.
  • Izričit odabir Direct briše host proxyja za sljedeći zahtjev.
  • Nevaljan ili nedostajući odabir ostavlja trenutnu konfiguraciju netaknutom i traži od korisnika da je ispravi.

Držanje tih ishoda odvojenima sprječava da redak bez odabira neočekivano pošalje sljedeći zahtjev izravno. Onemogućite gumb za zahtjev dok novi odabir nije dovršen.

Ako krajnje točke dolaze kao tekst, raščlanite ih i provjerite prije promjene bilo kojeg od dvaju svojstava. TryStrToInt omogućuje sučelju da prijavi loš port bez neuhvaćene iznimke pretvorbe. Dijeljenje na prvom dvotočju prikladno je samo za namjerno ograničen format hostname-ili-IPv4: IPv6 literal sadrži vlastita dvotočja. Odvojeno polje hosta i polje porta pojednostavljuju pohranjeni prikaz.

Ne dopustite da klik u sučelju izmijeni klijent koji radnik već koristi. Primijenite odabir između operacija ili dajte svakoj paralelnoj operaciji vlastiti konfigurirani klijent. Birač upravlja budućim vezama; ne može premjestiti uspostavljeni prijenos na drugi izlaz.

Povezani članci