Kitura是由IBM公司用Swift开发并开源的一个轻量级Web框架(https://github.com/IBM-Swift/Kitura),更新速度非常迅速,Swift3.0发布之后,Kitura便推出了1.0版本,目前最新的版本为1.2,并且Kitura也已经运用在IBM的PaaS平台BlueMix环境中,可谓Kitura让Swift在Web框架领域成为一种新鲜的生产力工具.
之前一直只闻其声,但从来没有实际使用过,今天在自己的服务器和本地都小试了一下,部署确实非常方便,大致记录一下这个过程.
在Linux中的部署
我自己的服务器环境是Ubuntu16.04.1(x64),这也是swift官网(swift.org)上描述支持的Linux环境.
1.安装基本的工具
|
|
2.下载Swift的工具包(最新版本请参见https://swift.org/download/)
|
|
3.下载Kitura示例并编译
|
|
4.运行起来
|
|
现在就可以访问试一下了,默认是开启的8090端口,http://your.server.ip.address:8090,默认的首页是一个Kitura的介绍页面,因为默认根路径未处理,所以就被转发到Kitura内部的默认处理页面了.Sample里面也有几个web接口示例,可尝试访问http://your.server.ip.address:8090/hello,会获取到一段文本,另外访问http://your.server.ip.address:8090/static这是Kitura提供的一个静态文件的Web服务器.
其实Kitura-Sample代码的内容是非常简单,除了对Kitura框架的依赖之外,有效代码就只有以下三个:
|
|
大致解读一下RouterCreator.swift的主要逻辑:
|
|
MAC环境下的部署
服务端开发一般都需要搭建一个本地的调试环境,而Kitura在MAC的本地部署就更简单了.
1.安装Xcode8.0及以上版本
2.下载Kitura示例并编译
|
|
此时就能看到Kitura-Sample目前中有一个KituraSample.xcodeproj工程文件,用Xcode打开选择Kitura-Sample这个Target,它是一个masOS的程序,但编译发现会发现有如下的报错:
|
|
后面排查问题发现所依赖的CHTTPParser库(由Kitura-net间接依赖,位于Kitura-net目录下面的Sources文件夹下)的module.modulemap是这样的:
|
|
这样的写法在命令行下是没问题的,但在Xcode中则需要修改为:
|
|
然后编译运行,成功之后在浏览器中便可访问http://127.0.0.1:8090/