Vapor

Vapor是一个基于Swift语言的开源Web框架，可用于创建RESTful API、网站和使用WebSockets的实时应用。在核心框架之外，Vapor还提供了ORM 、模板语言，以及用户身份验证和授权模块。 

Vapor的源代码按照MIT许可证开源，并托管在GitHub。自2016年以来，Vapor一直是服务端Swift工作组的一部分。

历史 
仅在Apple于2015年12月3日开源Swift，并开始支持Linux的一个月后，Vapor就发布了0.1.0版本，证明Swift作为服务端语言的可行性。 Vapor 1.0发布于2016年9月，2.0发布于2017年5月。

在3.0版本，为了基于Swift的非阻塞网络Vapor的框架SwiftNIO构建，Vapor框架进行了重写。 Vapor 3于2018年5月发布。 Apple还在Swift.org介绍服务端应用的页面上，引用了基于SwiftNIO的Vapor（以及Kitura）框架的速度数据。 

在Vapor 3的测试阶段，Packt 、 Paul Hudson、 Razeware LLC、和lynda.com都发布了一些介绍Vapor的教程资料。  2018年5月，Swift官方论坛新增加的「相关项目」板块，包含了Vapor相关的内容。

Vapor 4的Alpha 1 Release始于2019年5月，稳定版发布于2020年4月。

功能 
Vapor包含下列功能： 

 异步/非阻塞 IO
 HTTP认证：Basic认证、Bearer、JWT和基于密码的认证
 缓存： Redis和机遇内存缓存
 命令行格式化
 内容协商：支持JSON、multipart和URL-encoded
 加密： RNG 、密码、摘要、 RSA
 依赖注入和控制反转
 ORM： 支持MySQL、 PostgreSQL和SQLite等数据库
 HTTP客户端和服务器
 页面模版： HTML等
 日志
 URL路由
 数据验证
 WebSocket客户端和服务器
 基于队列的定时任务

参考 

Web应用框架