رموز خروج curl
الدرس 30 من 47 في دورة التعامل مع الشبكات عبر الطرفية على Coddy.
هناك مفهومان مختلفان تمامًا للفشل في أمر curl واحد، والخلط بينهما يسبب أخطاء حقيقية.
رمز الحالة هو إجابة الخادم: 200 و404 و500. أما رمز الخروج فيعبّر عمّا إذا كان curl قد تمكّن من إجراء الاتصال أصلًا.
إنّ 404 يعني أن الاتصال تم بنجاح. فقد تم الوصول إلى الخادم، وفهم الطلب، وأرسل إجابة. يخرج curl بالرمز 0. سيتعامل النص البرمجي الذي يتحقق من رمز الخروج فقط مع ذلك على أنه نجاح، وهذا سبب شائع لخطوط المعالجة التي تنجح أثناء تنزيل صفحة خطأ.
curl -s -o /dev/null http://127.0.0.1:9120/missing
echo $? # 0، لأن الطلب نفسه نجحإذا أردت حدوث فشل عند وجود حالة سيئة، فاطلب ذلك باستخدام --fail، إذ يجعل curl يخرج برمز غير صفري عند حالات 4xx و5xx. وإلا فتحقق من %{http_code} بنفسك.
التحدي
صعبأثبت أن الطلب الذي يعيد 404 يظل طلبًا ناجحًا.
- قدّم مجلدًا على المنفذ 9120
- اطلب صفحة غير موجودة واطبع
status=مع رمز الحالة - في السطر التالي اطبع
exit=مع رمز خروج curl
الناتج المتوقع:
status=404
exit=0اقرأ
$?مباشرةً بعد أمر curl الذي أنتجه.
جرّب بنفسك
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس التعامل مع الشبكات عبر الطرفية
6التعمق في curl
عرض الترويساتحفظ الاستجاباتترويسات مخصصةالحالة والتوقيترموز خروج curlمراجعة: خيارات curl9المصادقة وتصحيح الأخطاء
مفاتيح API وBearerوكيل المستخدمالمهلات وإعادة المحاولةقراءة الفشلمراجعة: تصحيح الأخطاءتدرّب بنفسك: Playground لـ Terminal