Bieži vien ir labāk ātri izgāzties, nekā turpināt gaidīt, cerot uz panākumiem.
Kad runa ir par tīmekļa pieprasījumu veikšanu, laiks ir ļoti svarīgs. Nevienam nepatīk bezgalīgi gaidīt, kamēr tīmekļa lapa tiks ielādēta vai serveris atbildēs. Ja izmantojat curl, lai izgūtu datus no tīmekļa, jūs ar prieku uzzināsiet, ka ir veidi, kā ierobežot pieprasījumu izpildes laiku.
Tālāk ir norādīts, kā ierobežot lokošanas pieprasījuma laiku, lai nodrošinātu, ka joprojām kontrolējat savas datu iegūšanas darbības.
1. metode: opcijas --max-time izmantošana
Kamēr palaižot čokurošanās komandu, varat norādīt -m vai --maksimālais laiks iespēja noteikt pieprasījumam stingru laika ierobežojumu. Šī opcija ļauj norādīt maksimālo laiku sekundēs, ko vēlaties ļaut komandai izpildīt, pirms tā tiek izvadīta ar taimauta kļūdas kodu (28):
curl --max-timе [sеconds] [URL]
Varat definēt maksimumu ar decimāldaļas precizitāti, kur 0,3 nozīmē 300 milisekundes, 5,46 ir 5460 milisekundes un 20 nozīmē 20 sekundes.
Piemēram:
curl -o test.md --max-time 30 https://github.com/test/file1
Šī komanda nosūta pieprasījumu uz norādīto GitHub URL. Tas saglabās atbildes datus kā test.md un beigsies ne ilgāk kā 30 sekunžu laikā.
2. metode: opcijas --connect-taimauts izmantošana
Lai kontrolētu laiku, ko loks pavada, mēģinot izveidot savienojumu ar resursdatoru, izmantojiet -- savienojuma noildze opciju. Tādējādi tiek iestatīts maksimālais laika ierobežojums, kurā ir jāpabeidz savienojuma darbības, tostarp DNS meklēšana un turpmākie TCP, TLS vai QUIC rokasspiedieni.
Ja curl nevar izveidot savienojumu jūsu norādītajā laika posmā, tas tiks aizvērts ar taimauta kļūdas kodu (28):
curl --connect-timeout [seconds] [URL]
Piemēram:
curl -o test.md --connect-time 20 https://github.com/test/file
Šeit komanda curl izgūst URL norādīto failu, saglabā to kā test.md un ievieš 20 sekunžu ierobežojumu savienojuma izveidei ar serveri.
Kontrolējiet čokurošanās pieprasījumus ātrai izgūšanai
Pasaulē, kurā laiks ir nauda, spēja ierobežot čokurošanās pieprasījuma laiku ir ērta prasme. Neatkarīgi no tā, vai izvēlaties opciju --connect-timeout vai --max-time, jūs uzņematies atbildību par datu iegūšanas uzdevumiem. Tātad, vairs nav jāgaida, ir pienācis laiks veikt efektīvus, kontrolētus tīmekļa pieprasījumus.
Nākamajā reizē, kad gaidīsit čokurošanās pieprasījuma pabeigšanu, atcerieties šīs metodes un ļaujiet cirtām darboties atbilstoši jūsu noteikumiem.