添加GET路由

如果你在Linux上开发,可以选择自己喜欢的编辑器来修改文件,然后使用命令行swift buildvapor run/swift run来编译运行。

如果你在Mac上开发,那么可以使用Xcode这个IDE来进行开发。使用vapor xcode命令在Xcode中打开工程。

什么是路由(route)

当浏览器向服务器发起请求时,服务器接到来自浏览器的请求后会转发给相应端口上提供服务的应用程序,应用程序接收到请求后需要知道调用哪段代码进行相应的处理,我们把客户请求(通常是一个URL)和应用程序针对它进行处理的代码逻辑(通常是一个函数)之间的对应关系叫作route

routes.swift文件中所作的事,就是建立这种对应关系。

下面添加一个GET类型的路由,在文件routes.swift中添加如下代码,并使用vapor run或者直接在Xcode中运行项目:

Swift
import Vapor
func routes(_ app: Application) throws {
    app.get { req in
        return "It works!"
    }

    app.get("hello") { req -> String in
        return "Hello, world!"
    }

    app.get("hello", ":name") { req -> String in
        guard let name = req.parameters.get("name", as: String.self) else {
            return "\(HTTPStatus.notFound)"
        }
        return "Hello, \(name)"
    }
}

使用chrome访问我们添加的路由如下图,可见正常工作,新增的路由可以接收字符串类型的参数,:name是一个命名占位符:

hello joker

评论