我正在开发Vapor的第一步,这是Swift的Web框架。
引起我注意的第一段代码是:
app.get("welcome") { request in
return "Hello"
}
我不懂这里的语法。我的意思是,我正在调用app.get()
方法,但我也在定义某种函数,其中request是一个参数。我知道这会导致/welcome
URL可以访问get方法,并返回“Hello”。对我来说不清楚的是这段代码如何工作以及编译器如何解释它。
答案 0 :(得分:4)
我在this answer中给出了闭包的各种句法糖的简要概述。
此代码的扩展版本为:
app.get("welcome", { (request: Request) throws -> ResponseRepresentable in
return "Hello"
})