الثنائي هو طريقة تشفير المعلومات تستند إلى الأعداد الثنائية. تستخدم تمثيل القيمة الثنائية (عادةً 0 و 1) لتخزين ومعالجة جميع أنواع البيانات، بما في ذلك النصوص والصور والصوت، إلخ.
نظام الثنائي هو أبسط طريقة تمثيل البيانات في تكنولوجيا الكمبيوتر لأن الأجهزة المادية الأساسية (مثل بوابات المنطق والفليب فلوب) يمكنها التعرف فقط على حالتين: التشغيل (1) والإيقاف (0).
ما هو Axios؟
Axios هو مكتبة شعبية لجافا سكريبت تُستخدم لإجراء طلبات HTTP من متصفحات الويب أو بيئات Node.js. توفر واجهة بسيطة ومتناسقة لإرسال طلبات HTTP غير متزامنة إلى نقاط نهاية REST والتعامل مع الاستجابات.
ما هو الملف الثنائي؟
الملف الثنائي هو نوع من ملفات الكمبيوتر التي تحتوي على بيانات بتنسيق ثنائي، والذي يتكون من سلسلة من الأرقام الثنائية (بتات) تمثل أنواعًا مختلفة من البيانات، مثل الكود القابل للتنفيذ، والصور، والصوت، أو ملفات الفيديو. على عكس الملفات النصية، التي تخزن البيانات في أحرف قابلة للقراءة البشرية (مثل ASCII أو Unicode)، تقوم الملفات الثنائية بتخزين البيانات بتنسيق مُحسّن لمعالجة الكمبيوتر والتخزين.
عند تحميل ملف ثنائي، تقوم بنقل التسلسل الدقيق للبيانات الثنائية من جهازك المحلي إلى خادم بعيد أو وجهة أخرى. تُستخدم هذه العملية بشكل شائع في تطوير البرمجيات لتحميل ملفات البرامج المجمعة، أو المكتبات، أو الموارد الأخرى المطلوبة لتشغيل تطبيق البرمجيات.
غالبًا ما يتم مقارنة التحميل الثنائي مع التحميل المستند إلى النص، حيث تتكون البيانات التي يتم تحميلها من أحرف قابلة للقراءة البشرية مُشفرة في مجموعة أحرف معينة، مثل ASCII أو UTF-8. التحميل المستند إلى النص أكثر ملاءمة لنقل المحتوى النصي، مثل ملفات التكوين، أو الشفرة المصدرية، أو المستندات. دعونا ببساطة نصف مفهوم ملف ثنائي للخادم.
لماذا استخدام تنسيق ثنائي للتحميل؟
الأسباب الرئيسية لاستخدام البيانات الثنائية لإرسالها إلى الخادم هي كما يلي:
- نقل بيانات فعال: البيانات الثنائية مضغوطة، مما يقلل من حجم النقل واستخدام النطاق الترددي.
- معالجة البيانات بشكل أسرع: الخوادم تقوم بتحليل البيانات الثنائية بشكل أسرع من النص، مما يحسن كفاءة معالجة البيانات.
- تعزيز نزاهة البيانات: البيانات الثنائية أقل عرضة للأخطاء ويمكن التحقق من نزاهتها أثناء النقل.
- دعم متعدد الاستخدامات: تنسيق البيانات الثنائية يستوعب أنواعًا مختلفة من البيانات، مما يجعله مرنًا لمختلف أنواع التحميل.
يمكن أن يؤدي إرسال البيانات الثنائية إلى الخادم إلى تحسين كفاءة نقل ومعالجة البيانات، وحماية نزاهة البيانات، ودعم أنواع متعددة من البيانات. إنه شكل شائع الاستخدام لتمثيل البيانات في اتصالات الشبكة. دعونا نستخدم Apidog لفهم المزيد عن تحميل بيانات التنسيق الثنائي.
كيفية تحميل الملفات الثنائية بطريقة بصرية
في Apidog، نحتاج إلى إرسال بيانات ثنائية مثل الصور، والصوت، أو الفيديوهات. الطريقة الأساسية لذلك هي من خلال تحميل الملفات. عند اختيار الثنائي كنوع الجسم، سيكون لديك عادةً خيار تحميل ملف بدلاً من إدخال البيانات الثنائية مباشرة. وهذا لأن إدخال البيانات الثنائية مباشرة في صندوق نص، خاصةً للملفات الكبيرة، غير مريح.
لإرسال البيانات الثنائية عبر Apidog:
- افتح Apidog وأنشئ طلبًا جديدًا. بعد إنشاء مشروع HTTP، انقر على أيقونة "+" لإنشاء طلب جديد. اضبط طريقة الطلب (مثل، POST) واملأ عنوان URL المطلوب.

2. اختر نوع الجسم كالثنائي
في واجهة تحرير الطلب، اختر علامة "Body"، واضغط على "ثنائي" من خيار "Binary" تحت علامة "Body"، واحفظه بعد الانتهاء من التكوين.

3. يمكنك اختيار أي نوع وسائط، مثل صورة، أو فيديو، أو صوت. اختر نوع الطلب PUT، أدخل API الخاص بك، اختر بيئتك، غير عنوان URL الأساسي إلى عنوان خادمك، احفظ طلبك، وانقر على زر الإرسال.

4. يمكنك التحقق من الاستجابة التي حصلت عليها من طلبك.

كيفية تحميل وإرسال ملف ثنائي في Axios
يمكن أيضًا تحقيق تحميل البيانات بتنسيق ثنائي إلى الخادم، مثل تحميل الملفات، من خلال مكتبة Axios. إليك تفصيل خطوة بخطوة:
1. إنشاء كائن FormData
أولاً، تحتاج إلى إضافة بياناتك الثنائية إلى كائن FormData. FormData هي طريقة تُستخدم لترميز البيانات في رسالة وإرسالها إلى الخادم بطريقة تحاكي سلوك تقديم النماذج.
let formData = new FormData();
// افترض أن لديك عنصر إدخال ملف أو كائن Blob لتحميله
formData.append('file', binaryData, 'filename.ext');
هنا "file" هو اسم الحقل للملف الذي تحصل عليه على الجانب الخادم، وbinaryData هي البيانات الثنائية التي تريد تحميلها (والتي يمكن أن تكون ملفًا تم الحصول عليه من <input type="file"> أو أي كائن Blob)، و'filename.ext' هو اسم الملف المقصود لحفظه على الخادم.
2. تكوين Axios
بعد ذلك، تحتاج إلى تكوين طلب Axios، وتحديدًا الرؤوس. نظرًا لأنك تقوم بتحميل ملف، فمن المفيد أن يكون رأس Content-Type مضبوطًا على 'multipart/form-data'. في معظم الحالات، يتولى المتصفح هذه العملية تلقائيًا عند استخدام FormData.
const config = {
headers: {
// سيتم ضبط `Content-Type` تلقائيًا بواسطة المتصفح
'Accept': 'application/json', // مجرد مثال، عدل حسب الحاجة
},
};
3. إرسال الطلب
أخيرًا، استخدم Axios لإرسال كائن formData.
axios.post('your-server-endpoint', formData, config)
.then(response => {
// التعامل مع الاستجابة الناجحة
console.log(response.data);
})
.catch(error => {
// التعامل مع الأخطاء
console.error(error);
});
هنا 'your-server-endpoint' هو نقطة النهاية للخادم التي ترغب في تحميل الملفات إليها.
يتضمن تحميل البيانات الثنائية إلى الخادم إنشاء كائن FormData، وإضافة ملفاتك (أو بيانات ثنائية أخرى) إليه، ثم إرسال الكائن عبر Axios. تأكد من إعداد تكوين Axios بشكل صحيح، خاصةً قسم رأس التكوين، ثم التعامل مع الاستجابات أو الأخطاء.
لاحظ أن الخادم يحتاج أيضًا إلى أن يتم تكوينه بشكل صحيح لاستقبال طلبات multipart/form-data ومعالجة الملفات المحملة. يتضمن ذلك عادةً إعداد تحليل جسم الطلب، ومنطق تخزين الملفات، إلخ، وهو ما لن يتم وصفه بالتفصيل.
الخاتمة
من خلال الخطوات أعلاه، يمكننا بسهولة إرسال بيانات ثنائية في Apidog، سواء كانت صورًا، أو صوتًا، أو فيديو، أو أنواع أخرى من الملفات. باستخدام وظيفة تحميل الملفات التي يوفرها Apidog، يمكننا بسهولة إرسال محتوى الملف المحلي إلى واجهة برمجة التطبيقات المستهدفة لتحقيق نقل البيانات الثنائية والاختبار. يوفر ذلك للمطورين الراحة عند تطوير واختبار واجهات برمجة التطبيقات، كما يعمل على تحسين كفاءة العمل.
