عند إجراء اختبارات API، يتم استخدام بيانات JSON عادةً لنقل البيانات. وبما أن cURL هو أداة قياسية من سطر الأوامر لاختبار API، تطرح التساؤلات: كيف يمكن إرسال بيانات JSON باستخدام أمر cURL؟ توجهك هذه المقالة خلال عملية إرسال بيانات JSON باستخدام أمر cURL.
ما هو cURL؟
cURL (اختصار لـ Client for URLs) هي أداة من سطر الأوامر ومكتبة لنقل البيانات باستخدام عناوين URL. تدعم مجموعة واسعة من البروتوكولات، بما في ذلك HTTP وHTTPS وFTP وFTPS وSCP وSFTP وLDAP وLDAPS وDICT وTELNET وFILE والمزيد.

cURL تُستخدم على نطاق واسع في مجتمع التطوير والبرمجة لإجراء طلبات HTTP، وتنزيل أو رفع الملفات، والتفاعل مع خدمات الشبكة المختلفة.
تركيب الأساس لاستخدام cURL هو:
bashCopy code
curl [options] [URL...]
إليك بعض الخيارات الشائعة:
-X: يحدد طريقة HTTP (GET، POST، PUT، DELETE، إلخ).-H: يضيف رؤوس مخصصة إلى الطلب.-d: يرسل البيانات في جسم الطلب (يستخدم لطلبات POST).-o: يكتب الناتج إلى ملف.-O: يقوم بتنزيل الملف ويستخدم اسم الملف البعيد.-L: يتبع إعادة التوجيهات.-u: يقدم اسم المستخدم وكلمة المرور للمصادقة.
ما هو JSON؟
JSON، التي تعني JavaScript Object Notation، هي تنسيق تبادل بيانات خفيف الوزن. من السهل على البشر قراءته وكتابته وسهل على الآلات تحليله وتوليده. يتم تمثيل بيانات JSON على شكل أزواج من المفتاح والقيمة، مشابهة لكيفية تمثيل الكائنات في العديد من لغات البرمجة.
تتكون بيانات JSON من هيكلين:
- كائن: مجموعة غير مرتبة من أزواج المفتاح والقيمة محاطة بأقواس معقوفة
{}. كل مفتاح هو سلسلة نصية، يتبعه نقطتان، ثم القيمة المرتبطة. - مصفوفة: قائمة مرتبة من القيم محاطة بأقواس مربعة
[]. يمكن أن تكون القيم داخل المصفوفة من أي نوع بيانات، بما في ذلك الكائنات والمصفوفات.
إليك مثال على بيانات JSON بسيطة:
{
"title": "العائد في حقل الشوفان",
"author": "ج. د. سالينجر",
"publishedYear": 1951,
"isAvailable": true,
"genres": ["خيال", "نمو"]
}
في هذا المثال:
- يمثل كائن JSON كتابًا مع سمات مثل
titleوauthorوpublishedYearوisAvailable. - حقل
genresهو مصفوفة من السلاسل النصية تمثل أنواع الكتاب.
ما هو طلب POST؟
طلب POST هو طريقة طلب HTTP تستخدم لإرسال البيانات إلى خادم لمعالجتها. تُدرج البيانات في جسم الطلب، بدلاً من عنوان URL. تُستخدم طلبات POST غالبًا لتقديم نماذج الويب، وإنشاء موارد جديدة على الخادم، وتعديل البيانات الموجودة.

استخدام cURL لإرسال بيانات JSON عن طريق POST
لاستخدامه لإرسال بيانات JSON، يمكنك اتباع هذه الخطوات باستخدام مثال JSON الذي قدمته:
إليك كيف يمكنك استخدام cURL لإجراء طلب POST مع بيانات JSON هذه:
curl -X POST -H "Content-Type: application/json" -d @book.json http://example.com/api/books
دعني أشرح الأمر:
-X POST: يحدد طريقة الطلب HTTP كـ POST.-H "Content-Type: application/json": يحدد رأسContent-Typeللإشارة إلى أن جسم الطلب بتنسيق JSON.-d @book.json: يرسل البيانات من ملفbook.jsonفي جسم الطلب.http://example.com/api/books: استبدل هذا بعنوان URL الفعلي الذي تريد إرسال طلب POST إليه.
تأكد من استبدال http://example.com/api/books بنقطة النهاية الفعلية التي تريد إرسال طلب POST إليها.
إذا لم يكن لديك البيانات في ملف وتريد إرسالها مباشرة في الأمر، يمكنك فعل شيء مثل هذا:
curl -X POST -H "Content-Type: application/json" -d '{"title":"العائد في حقل الشوفان","author":"ج. د. سالينجر","publishedYear":1951,"isAvailable":true,"genres":["خيال","نمو"]}' http://example.com/api/books
يتضمن هذا الأمر بيانات JSON مباشرة في الأمر باستخدام خيار -d. مرة أخرى، قم باستبدال عنوان URL بنقطة النهاية الفعلية التي تعمل معها.
طريقة سهلة لإرسال بيانات JSON عن طريق POST باستخدام Apidog
إرسال بيانات JSON بسهولة أمر حاسم لاستخدام API بشكل سلس. بينما قد يتعامل المستخدمون ذوو الخبرة التقنية مع سطر أوامر cURL، قد يكون الأمر صعبًا بالنسبة للآخرين. Apidog تدخل بواجهة سهلة الاستخدام، مما يجعل الأمر سهلًا للجميع.
تبسط واجهة Apidog العملية كاملة. يمكن للمستخدمين بسهولة اختيار طريقة HTTP وتنسيق البيانات.

يتألق Apidog بمجموعة كاملة من الميزات، حيث يتعامل مع كل شيء بدءًا من تصميم API إلى الاختبار. إنه أداة متكاملة لكل ما يتعلق بـ API، سواء كنت تقوم بإنشائها أو إصلاحها.
إرسال JSON باستخدام Apidog سهل للغاية. فقط اختر POST، اذهب إلى علامة التبويب Body، اختر JSON، وأدخل بياناتك. يتجاوز Apidog خطوط الأوامر المعقدة، مما يتيح للمستخدمين إدخال JSON مباشرة. إنه مثالي لأي شخص في عمل API، بغض النظر عن خلفيته التقنية أو تجربته مع أدوات مثل cURL.

