hummingbird
v2.5.0


가볍고 유연하며 현대적인 서버 프레임 워크가 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 : TLS 지원HummingbirdHTTP2 : HTTP2 업그레이드 지원HummingbirdTesting : 헬퍼 기능은 벌새 프로젝트를 테스트합니다다음 확장은 별도의 저장소에서 사용할 수 있습니다.
Hummingbird의 참조 문서 및 사용자 안내서는 여기에서 찾을 수 있습니다. 벌새-예방 저장소에는 라이브러리의 다른 용도에 대한 여러 가지 예가 있습니다.
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우리는 벌새에 대한 기여를 환영합니다! 풀 요청을 제출하기 전에 기고 가이드 라인을 읽으십시오.
벌새는 Apache 2.0 라이센스에 따라 출시됩니다.