基于Swift的Web框架Vapor2.0文档(翻译)Routing-Collection

转载请附原文链接:http://blog.fandong.me/2017/08/12/iOS-SwiftVaporWeb12/

前言

之前一直有做Java后台开发的兴趣,可是想到要看好多的Java教程,作为一个iOS开发者,我放弃了,
后来从朋友韩云智VL那里知道了这个框架,竟是用Swift写的,不得不说,它燃起了我的兴趣。
Vapor是一个基于Swift开发的服务端框架,可以工作于iOS,Mac OS,Ubuntu。
为了配合Swift部署到服务器,我把ECS的服务器系统改为Ubuntu16.04。

Vapor 2.0 - 文档目录
以下文字翻译自Vapor Docs/Routing/Collection

路由集合

路由集合允许将多个路由和路由组组织在不同的文件和模块中.

示例

这是v1API部分的路由集合示例

import Vapor
import HTTP
import Routing

class V1Collection: RouteCollection{
    func build(_builder:RouteBuilder){
        let v1 = builder.grouped("v1")
        let users = v1.grouped("users")
        let articles = v1.grouped("articles")
        
        users.get{ request in
            return "Requested all users."
        }
        
        articles.get(Article.init){ request, article in
            return "Requested \(article.name)"
        }
    }
}

这个类可以放到任何文件中,我们也可以把它添加到我们的Droplet甚至另一个路由组.

let v1 = V1Collection()
drop.collection(v1)

Droplet将会被传递给您的路由集合的build(_:)方法,并添加各种路由.

空的初始化方法

你可以添加EmptyInitializable到你的路由集合,并且如果路由集合有一个空的初始化方法,这就允许你通过其类型名称添加路由集合

class V1Collection: RouteCollection,EmptyInitiallizable {
    init(){}
    ...
}

现在我们可以添加路由集合而不初始化它

你可能感兴趣的:(基于Swift的Web框架Vapor2.0文档(翻译)Routing-Collection)