عن المشروع

oha هو مولد حمولة HTTP يعمل عبر سطر الأوامر ومستوحى من rakyll/hey. تم تطويره بلغة Rust باستخدام runtime tokio ومكتبة ratatui لتوفير واجهة مستخدم رسومية في الطرفية (TUI) جميلة وفي الوقت الفعلي لتصور حمولة الطلبات ومقاييس الأداء. تشمل القدرات الرئيسية ما يلي: - توليد الحمولة: يدعم تحديد عدد الطلبات، والاتصالات المتزامنة، ومدة الاختبار. - دعم البروتوكولات: يدعم HTTP/1 و HTTP/2 و HTTP/3 التجريبي. - التحكم في حركة المرور: يتميز بتحديد معدل الطلبات (QPS)، وإعدادات تأخير/معدل الاندفاع، وتصحيح زمن الاستجابة لتجنب مشكلة الإغفال المنسق (coordinated omission problem). - استهداف مرن: يمكنه قراءة عناوين URL من ملف أو توليد عناوين URL عشوائية باستخدام أنماط regex. - تخصيص الطلبات: يدعم طرق HTTP المخصصة، والرؤوس (headers)، وإعدادات الوكيل (proxy)، والمصادقة الأساسية، وتوقيع AWS SigV4، وأجسام الطلبات (عبر سلسلة نصية أو ملف). - تنسيقات المخرجات: يمكن إخراج النتائج كنص أو JSON أو CSV، ويمكن كتابتها في ملف أو قاعدة بيانات SQLite. - الاتصال: يدعم IPv4 و IPv6 و Unix sockets والتحقق المخصص من شهادات TLS.