「Swift」Vapor系列教程(1)

前言:

Swift可以开发服务器端程序已不是什么新鲜事,由于近期非常忙就没有过多研究,最近我在Twitter上看到很多国外开发者已经在使用Swfit作为服务器开发语言了。我留言并得到了回复得知他们使用开发框架就是今天的主角 Vapor.

如果你曾阅读过之前关于NodeJS系列文章,那么对于本系列教程你会感觉非常简单,但是前提是你已了解Swfit语言。

一、 Vapor介绍

Vapor有哪些特点?

代码语言:javascript
复制
 1. 创建Web应用程序,网站,API,WebSockets
2. 比其他流行的框架(Ruby和PHP)更快
3. 支持SSL
4. 支持中间件

二,安装Vapor开发环境

开始之前确保你安装了Xcode8和Swift3

ToolBox是Vapor提供的命令行工具,它提供了创建工程,构建工程,启动服务器等常用操作。

接下来我们使用下面的命令安装ToolBox

代码语言:javascript
复制
curl -sL toolbox.vapor.sh | bash

执行完成后你可以看到如下界面

为了确保Vapor已经正确安装你可以使用如下命令验证安装结果

代码语言:javascript
复制
vapor --help

三、 Hello Word

当你完成了上述工作后紧接着创建第一个Hello工程。

代码语言:javascript
复制
vapor new Hello

如果你使用其他开发框架你可能对生成的目录结构感到熟悉

代码语言:javascript
复制
Hello
├── Sources
│   └── App
│       └── Controllers
│       └── Middleware
│       └── Models
│       └── main.swift
├── Public
├── Resources
│   └── Views
└── Package.swift

现在我们主要关注main.swift文件,我们可以使用任何文本编辑器打开main.swift 编辑后完整代码如下:

代码语言:javascript
复制
import Vaporlet drop = Droplet()drop.get("hello") { request in
   return "Hell, world!"
}
drop.get { req in
   return try drop.view.make("welcome", [
       "message": drop.localization[req.lang, "welcome", "title"]
   ])
}drop.resource("posts", PostController())drop.run()

现在你不必过多担心代码的含义,接下来的章节中我们将会一一介绍。 接着我们依次执行如下命令:

代码语言:javascript
复制
vapor build  build工程
vapor run serve 启动服务器

提示:第一次build工程时花费的时间稍长

服务器启动成功后你会看到如下消息

代码语言:javascript
复制
Server starting....
Running Hello...
No preparations.
Server 'default' starting at 0.0.0.0:8080

打开浏览器我们在地址栏访问 http://localhost:8080/hello 你会得到一个Hell, world!

四、 Xcode

如果你想使用Xcode作为开发工具,你只需要在 Hello 根目录下执行如下命令:

代码语言:javascript
复制
vapor xcode

执行此命令后根目录下将会生成一个Hello.xcodeproj文件.

代码语言:javascript
复制
vapor xcode -y (自动使用Xcode打开该工程)

其他高级内容我将会在后续文字陆续介绍