簡(jiǎn)介
iOS的app開(kāi)發(fā)已經(jīng)日近飽和了,但Swift是一門(mén)非常優(yōu)秀的語(yǔ)言。也許總是在抱怨生不逢時(shí),Swift算是這個(gè)時(shí)代的??了。希望Vapor + Vue.js可以幫我開(kāi)啟新的世界。
Vapor是一個(gè)用Swift寫(xiě)得開(kāi)源網(wǎng)絡(luò)框架,可以部署到Ubuntu和macOS上。
Swift 的主要網(wǎng)絡(luò)框架如下:
| 框架 | ?? |
|---|---|
| Perfect | 10,746 |
| Vapor | 8,860 |
| Kitura(IBM) | 5,383 |
| Zewo | 1,579 |
Vapor雖然不是??最多的,但是是更新頻率最快的,而且??也上升很快。Perfect最近一次更新是2個(gè)月以前。Vapor基本每隔幾天就會(huì)更新。Vapor的介紹界面也很漂亮??,看上去很有趣,介紹文檔也很完善。
Vapor文檔地址:https://vapor.codes
Vapor安裝
macOS
macOS好像是安裝了Xcode就自帶Vapor了。Ubuntu
Ubuntu上最好先安裝Nginx, Vapor也是需要Nginx來(lái)管理的。
Ubuntu要先安裝Swift庫(kù)。
快速安裝
curl -sL swift.vapor.sh/ubuntu | bash
但是我試了很久都沒(méi)成功,貌似Swift還是要單獨(dú)安裝。我是使用homebrew安裝的??梢韵劝惭bhomebrew,homebrew安裝其他工具也方便。
安裝完需要檢測(cè)一下:
curl -sL swift.vapor.sh/ubuntu | bash
Toolbox安裝
Toolbox提供了一系列簡(jiǎn)單命令用來(lái)操作Vapor。比如建一個(gè)工程,Toolbox只需要一行命令就搞定了,不然需要寫(xiě)一大串配置信息。
Toolbox安裝命令:
curl -sL toolbox.vapor.sh | bash
安裝完Toolbox最好更新一下,不然可能很多命令會(huì)失敗:
vapor self update
Hello World
雖然Vapor可以安裝在Ubuntu上,但是編程還是需要在Xcode上完成。我們最好在macOS上完成程序和自測(cè),然后在部署到Ubuntu上。
現(xiàn)在開(kāi)始在Mac上試驗(yàn)HelloWorld:
1 . 新建一個(gè)Vapor項(xiàng)目
利用Toolbox建立一個(gè)空的項(xiàng)目:
vapor new HelloWorld
2 . 使用Xcode打開(kāi)項(xiàng)目
cd到HelloWord的當(dāng)前目錄下,執(zhí)行:
vapor xcode
Xcode就會(huì)自動(dòng)打開(kāi)HelloWorld工程。
3 . 查看目錄結(jié)構(gòu)
主要目錄如下:
| 文件名 | 描述 |
|---|---|
| Package.swift | 配置文件,基本保持不動(dòng)就好了 |
| Sources | 子文件App是我們的代碼,其他是框架 |
| Tests | 應(yīng)該是單元測(cè)試代碼 |
| Config | 配置服務(wù)器文件 |
| Resources | 可以存放Web頁(yè)面 |
4 . 修改源碼
打開(kāi)/Source/App/main.swift可以配置自己的主頁(yè)面。
import Vapor
let drop = Droplet()
drop.view = LeafRenderer(viewsDir: drop.viewsDir)
drop.get("index") { request in
return try drop.view.make("index.html")
}
drop.resource("posts", PostController())
drop.run()
配置了一個(gè)index.html頁(yè)面到Vapor,將index.html文件放到Resources的View文件下,訪問(wèn)路徑:
http://localhost:8080/index
5 . 編譯
vapor build
6 . 運(yùn)行
vapor run serve