Vapor_1_搭建環(huán)境

簡(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
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容