غالبًا ما يكون الفشل سريعًا أفضل من الاستمرار في الانتظار على أمل النجاح.
عندما يتعلق الأمر بتقديم طلبات الويب، فإن التوقيت أمر بالغ الأهمية. لا أحد يحب الانتظار إلى ما لا نهاية حتى يتم تحميل صفحة ويب أو استجابة الخادم. إذا كنت تستخدم الضفيرة لجلب البيانات من الويب، فسوف يسعدك معرفة أن هناك طرقًا لوضع حد أقصى للوقت الذي تستغرقه طلباتك.
فيما يلي كيفية تحديد وقت طلب التجعيد للتأكد من أنك تظل متحكمًا في عمليات جلب البيانات.
الطريقة الأولى: استخدام خيار --max-time
بينما تشغيل أمر الضفيرة، يمكنك تحديد -م أو --الحد الأقصى للوقت خيار لتعيين حد زمني صارم للطلب. يتيح لك هذا الخيار تحديد الحد الأقصى للوقت، بالثواني، الذي ترغب في ترك الأمر يستغرقه قبل أن يتم الخروج مع رمز خطأ المهلة (28):
curl --max-timе [sеconds] [URL]
يمكنك تحديد الحد الأقصى بدقة عشرية، حيث 0.3 يعني 300 مللي ثانية، و5.46 يساوي 5460 مللي ثانية، و20 يعني 20 ثانية.
على سبيل المثال:
curl -o test.md --max-time 30 https://github.com/test/file1
يرسل هذا الأمر طلبًا إلى عنوان URL لـ GitHub المقدم. سيحفظ بيانات الاستجابة كـ test.md وينتهي خلال مدة أقصاها 30 ثانية.
الطريقة الثانية: استخدام خيار --connect-timeout
للتحكم في الوقت الذي يقضيه حليقة في محاولة الاتصال بمضيف، استخدم --ربط مهلة خيار. يؤدي هذا إلى تعيين الحد الأقصى للوقت لـ Curl لإكمال خطوات الاتصال، بما في ذلك بحث DNS ومصافحات TCP أو TLS أو QUIC اللاحقة.
إذا لم يتمكن Curl من إنشاء اتصال خلال الإطار الزمني الذي تحدده، فسيتم الخروج مع رمز خطأ المهلة (28):
curl --connect-timeout [seconds] [URL]
على سبيل المثال:
curl -o test.md --connect-time 20 https://github.com/test/file
هنا، يسترد أمر الضفيرة الملف المحدد في عنوان URL، ويحفظه كـ test.md، ويفرض حدًا مدته 20 ثانية لتأسيس الاتصال بالخادم.
التحكم في طلبات الضفيرة للاسترجاع السريع
في عالم حيث الوقت هو المال، تعد القدرة على تحديد وقت طلب التجعيد مهارة مفيدة. سواء اخترت خيار --connect-timeout أو --max-time، فأنت تتولى مسؤولية مهام جلب البيانات الخاصة بك. لذا، لا مزيد من الانتظار الذي لا نهاية له، فقد حان الوقت لتقديم طلبات ويب فعالة ومضبوطة.
في المرة القادمة التي تجد فيها نفسك تنتظر انتهاء طلب التجعيد، تذكر هذه الطرق واجعل التجعيد يعمل وفقًا لشروطك.