Het is vaak beter om snel te falen dan te blijven wachten in de hoop op succes.
Als het gaat om het doen van webverzoeken, is timing cruciaal. Niemand houdt ervan om eindeloos te wachten tot een webpagina is geladen of een server reageert. Als u curl gebruikt om gegevens van internet op te halen, zult u blij zijn te weten dat er manieren zijn om de tijd die uw verzoeken in beslag nemen te beperken.
Hier leest u hoe u de curl-aanvraagtijd kunt beperken om ervoor te zorgen dat u de controle behoudt over uw gegevensophaalbewerkingen.
Methode 1: Gebruik van de optie --max-time
Terwijl het uitvoeren van de curl-opdracht, kunt u de -M of --max-tijd mogelijkheid om een strikte termijn aan het verzoek te stellen. Met deze optie kunt u de maximale tijd, in seconden, opgeven die u de opdracht wilt laten duren voordat deze wordt afgesloten met een time-outfoutcode (28):
curl --max-timе [sеconds] [URL]
U kunt het maximum met decimale precisie definiëren, waarbij 0,3 300 milliseconden betekent, 5,46 gelijk is aan 5.460 milliseconden en 20 20 seconden betekent.
Bijvoorbeeld:
curl -o test.md --max-time 30 https://github.com/test/file1
Met deze opdracht wordt een verzoek verzonden naar de opgegeven GitHub-URL. Het slaat de antwoordgegevens op als test.md en wordt binnen maximaal 30 seconden voltooid.
Methode 2: De optie --connect-timeout gebruiken
Om de tijd te controleren die Curl besteedt aan het proberen verbinding te maken met een host, gebruikt u de --connect-time-out keuze. Hiermee wordt een maximale tijdslimiet ingesteld voor curl om de verbindingsstappen te voltooien, inclusief DNS-zoekopdracht en daaropvolgende TCP-, TLS- of QUIC-handshakes.
Als curl geen verbinding tot stand kan brengen binnen het door u opgegeven tijdsbestek, wordt deze afgesloten met een time-outfoutcode (28):
curl --connect-timeout [seconds] [URL]
Bijvoorbeeld:
curl -o test.md --connect-time 20 https://github.com/test/file
Hier haalt de curl-opdracht het bestand op dat is opgegeven in de URL, slaat het op als test.md en dwingt een limiet van 20 seconden af voor het tot stand brengen van de verbinding met de server.
Beheer krulverzoeken voor snel ophalen
In een wereld waar tijd geld is, is het een handige vaardigheid om de tijd voor krulverzoeken te beperken. Of u nu de optie --connect-timeout of --max-time kiest, u neemt de leiding over uw taken voor het ophalen van gegevens. Dus geen eindeloos wachten meer, het is tijd om efficiënte, gecontroleerde webverzoeken te doen.
De volgende keer dat u merkt dat u wacht tot een curl-verzoek is voltooid, onthoud dan deze methoden en laat de curl op uw voorwaarden werken.