

إطار خادم خفيف ومرن وحديث مكتوب في Swift.
Hummingbird هو إطار عمل ويب حديث ومرن مرن يعمل فوق تطبيق خادم Swiftnio. إنه مصمم ليتطلب الحد الأدنى لعدد التبعيات.
إنه يوفر جهاز توجيه لتوجيه نقاط النهاية المختلفة إلى معالجاتهم ، والوسيط للطلبات المعالجة قبل الوصول إلى معالجاتك ومعالجة الردود التي يتم إرجاعها ، وترميز/فك تشفير الطلبات/الردود ، و TLS و HTTP2.
import Hummingbird
// create router and add a single GET /hello route
let router = Router ( )
router . get ( " hello " ) { request , _ -> String in
return " Hello "
}
// create application using router
let app = Application (
router : router ,
configuration : . init ( address : . hostname ( " 127.0.0.1 " , port : 8080 ) )
)
// run hummingbird application
try await app . runService ( )تم تصميم قلب Hummingbird ليكون الحد الأدنى ، مع توفير ميزات إضافية من خلال الامتدادات. فيما يلي بعض الامتدادات الرسمية:
HummingbirdRouter : جهاز توجيه بديل باستخدام بناة النتائجHummingbirdTLS : دعم TLSHummingbirdHTTP2 : دعم ترقية HTTP2HummingbirdTesting : وظائف المساعد لاختبار مشاريع الطائر الطنانتتوفر الإضافات التالية في مستودعات منفصلة:
يمكنك العثور على وثائق مرجعية وأدلة المستخدم للطيور الطنانة هنا. يحتوي مستودع Hummingbird-Examples على عدد من الأمثلة على الاستخدامات المختلفة للمكتبة.
أضف ما يلي إلى ملف Package.swift الخاص بك:
dependencies: [
. package ( url : " https://github.com/hummingbird-project/hummingbird.git " , from : " 2.0.0 " )
] ,
targets: [
. executableTarget (
name : " MyApp " ,
dependencies : [
. target ( name : " Hummingbird " ) ,
] ) ,
] أو قم بتشغيل الأوامر التالية على الحزمة الخاصة بك باستخدام swiftpm ، واستبدال MyApp باسم هدفك:
swift package add - dependency https : //github.com/hummingbird-project/hummingbird.git --from 2.0.0
swift package add - target - dependency Hummingbird MyAppنرحب بالمساهمات في الطائر الطنان! يرجى قراءة إرشاداتنا المساهمة قبل تقديم طلب سحب.
يتم إصدار Hummingbird بموجب ترخيص Apache 2.0.