تتضمن تفاعلات العميل-الخادم تبادل المعلومات. بينما يركز المستخدمون عادةً على المحتوى المقدم من خادم الويب، يتضمن الرد الأولي بيانات وصفية هامة ضمن الرأس.
مع Apidog، يمكنك بناء وتقييم ومحاكاة وتوثيق واجهات برمجة التطبيقات ضمن تطبيق واحد. فماذا تنتظر؟ قم بتبسيط تطويرك بسرعة من خلال النقر على الزر أدناه!
تحمل هذه القسم الرأس تفاصيل قيمة حول المورد المطلوب، مثل نوع المحتوى، والحجم، وتاريخ التعديل. توفر أداة cURL أداة قوية لاستخراج معلومات الرأس هذه دون تنزيل المحتوى بالكامل: طلب HEAD.
لتجنب اللبس، سنعرف أولاً المصطلحات "cURL" و "طلب HEAD" على التوالي.
ما هو cURL؟
cURL، اختصارًا لـ "client URL"، هو مشروع برمجي متعدد الجوانب يتضمن عنصرين رئيسيين:
أداة سطر أوامر cURL
هذه هي واجهة المستخدم التي تتفاعل معها في محطة الأوامر الخاصة بك. تتيح لك إرسال واستقبال البيانات باستخدام بروتوكولات الشبكة المختلفة، الأكثر شيوعًا HTTP (المواقع الإلكترونية) و HTTPS (المواقع الآمنة). اعتبرها وسيلة لإعطاء تعليمات محددة لخادم حول ما تريده منه.
مكتبة libcurl
هذه هي الأداة الرئيسية خلف الكواليس. إنها مكتبة برمجية يمكن للمطورين دمجها في تطبيقاتهم لتمكين تلك التطبيقات من نقل البيانات باستخدام نفس البروتوكولات مثل أداة curl. لذا، حتى إذا لم تكن تستخدم سطر الأوامر curl مباشرة، فقد تكون مستفيدًا من وظائف libcurl في برامج مختلفة تستخدمها.
ميزات cURL الملحوظة
دعم البروتوكولات
إنها رائدة في مجال الاتصالات، تدعم مجموعة واسعة من البروتوكولات بالإضافة إلى HTTP/HTTPS، بما في ذلك FTP (نقل الملفات)، SMTP (البريد الإلكتروني)، وحتى البروتوكولات للاستخدامات النادرة.
المرونة
يقدم أمر curl مجموعة غنية من الخيارات لتخصيص طلباتك. يمكنك تحديد أشياء مثل طرق المصادقة، وأنماط نقل البيانات، وتنسيق الإخراج، ومراقبة التقدم.
عبر الأنظمة الأساسية
cURL متاح تقريبًا على كل نظام تشغيل، مما يجعله أداة شائعة للمطورين ومديري النظام على حد سواء.
ما هو طلب HEAD؟
طلب HEAD هو طريقة محددة من HTTP تعمل بشكل مشابه جدًا لطلب GET، مع اختلاف رئيسي واحد: يتجاهل الخادم جسم الرد في استجابته. ي fetch طلب HEAD فقط معلومات الرأس من استجابة الخادم.
عادةً ما يُستخدم طلب HEAD للحصول على البيانات الوصفية المخزنة ضمن قسم الرأس، مثل:
نوع المحتوى
هذا يحدد نوع المحتوى الذي يتم تقديمه، مثل HTML، صورة (JPEG، PNG)، أو PDF.
طول المحتوى
هذا يكشف عن حجم المورد بالبايت، مما يتيح لك تقدير أوقات التحميل أو إدارة مساحة التخزين.
آخر تعديل
هذا يشير إلى التاريخ والوقت الذي تم فيه تغيير المورد آخر مرة على الخادم.
حالات استخدام طلبات HEAD الشائعة
التحقق من توفر المورد
يمكن أن يؤكد طلب HEAD ما إذا كانت URL معينة تشير إلى مورد صالح. تُخبرك رمز استجابة الخادم (مثل 200 للنجاح، 404 غير موجود) إذا كان المورد موجودًا.
التحميلات المشروطة
إذا كان لديك نسخة مخزنة محليًا من مورد، يمكن لطلب HEAD مقارنة رأس آخر تعديل مع نسختك المخزنة. يساعد ذلك في تحديد ما إذا كنت بحاجة إلى تحميل نسخة أحدث.
تحسين التحميلات
معرفة طول المحتوى مسبقًا يساعدك في تحديد أولويات التحميلات أو إدارة قيود النطاق الترددي.
تصحيح الأخطاء وأتمتة السكريبتات
يمكن استخدام طلبات HEAD للتحقق من استجابات الخادم وحل مشاكل وظيفة الموقع خلال التطوير أو ضمن السكريبتات الآلية.
أمثلة على كود طلبات HEAD من cURL
إليك ثلاثة أمثلة على كود طلبات HEAD من cURL يمكنك الرجوع إليها إذا لزم الأمر.
المثال 1 - طلب HEAD أساسي
هذا هو أبسط مثال لإرسال طلب HEAD إلى URL معين.
curl -I https://www.example.com
المثال 2 - التحقق من توفر المورد مع رمز الاستجابة
يفحص هذا المثال ما إذا كان المورد موجودًا من خلال النظر إلى رمز الاستجابة.
curl -I -o /dev/null https://www.example.com/images/banner.jpg
شرح الكود:
هنا، -o /dev/null يتجاهل جسم الاستجابة (لأننا نهتم فقط بالرؤوس). سيتم عرض رمز الاستجابة، مما يشير إلى النجاح (200) أو خطأ (مثل 404 غير موجود).
المثال 3 - تحميل مشروط مع رأس آخر تعديل
يفحص هذا المثال ما إذا كانت هناك حاجة لتحديث ملف محلي بناءً على رأس آخر تعديل للخادم.
local_file_date=$(stat -c %y my_file.txt)
curl -I -s https://www.example.com/files/my_file.txt | grep Last-Modified: | cut -d':' -f2- | tr -d '\r' | awk '{print $1,$2,$3,$4,$5,$6}' | cmp - $local_file_date
شرح الكود:
stat -c %y my_file.txtيحصل على تاريخ آخر تعديل للملف المحلي.curl -I -sيسترجع الرؤوس بصمت.- نقوم بتصفية رأس آخر تعديل وتنسيقه.
cmpيقارن تاريخ الخادم مع تاريخ الملف المحلي.- إذا اختلفت التواريخ، ستظهر رسالة تشير إلى الحاجة لتحديث.
Apidog - استيراد أوامر cURL في بضع ثوانٍ
Apidog هي أداة شاملة لتطوير واجهات برمجة التطبيقات توفر الوظائف للمطورين لاستيراد أوامر cURL الحالية إلى طلبات واجهات برمجة التطبيقات القابلة للقراءة في واجهة مستخدم جميلة!

دعونا نرى كيف يمكنك بسرعة استيراد cURL إلى Apidog!
استيراد وتحرير واجهات برمجة التطبيقات من cURL باستخدام Apidog

يدعم Apidog المستخدمين الذين يرغبون في استيراد أوامر cURL إلى Apidog. في مشروع فارغ، انقر على زر + الأرجواني في الجزء العلوي الأيسر من نافذة Apidog، واختر استيراد cURL.

انسخ والصق أمر cURL في المربع المعروض على شاشتك.

إذا كانت العملية ناجحة، يجب أن تكون قادرًا الآن على عرض أمر cURL في شكل طلب واجهة برمجة التطبيقات.
إنشاء كود PHP لواجهة برمجة التطبيقات cURL باستخدام Apidog
إذا لم يكن لديك خبرة سابقة في البرمجة بلغة PHP، فلا تقلق! يحتوي Apidog على ميزة توليد الكود التي يمكنك الاعتماد عليها، حيث توفر لك أطر كود لعدة لغات برمجة أخرى.

أولاً، حاول العثور على زر </> إنشاء كود في أي واجهة برمجة تطبيقات أو طلب، واختر إنشاء كود عميل من القائمة المنسدلة.

بعد ذلك، اختر PHP، وابحث في قسم cURL. يجب أن ترى الآن الكود الناتج لـ cURL. كل ما عليك فعله هو نسخه ولصقه في بيئة تطويرك (IDE) واستكمال تطوير تطبيقك.
الاستنتاج
يعتبر طلب HEAD من cURL أداة قيمة للتفاعل مع خوادم الويب بشكل مستهدف. من خلال جلب معلومات الرأس فقط، يسمح لك بجمع تفاصيل حاسمة حول الموارد دون عبء تنزيل الملفات بالكامل.
تثبت هذه الكفاءة فائدتها في سيناريوهات مختلفة، من التحقق من توفر الموارد وتحسين التحميلات إلى تبسيط سير العمل في التنمية وصياغة السكريبتات الآلية. بينما تستكشف قدرات cURL وطلب HEAD، ستكتشف طريقة قوية للحصول على رؤى حول العمل المعقد للويب.
