Routing - noppoMan/Slimane GitHub Wiki

The Basic

GET

app.use(.get, "/") { request, response, responder in
    var response = response
    response.text("Hello World")
    responder(.respond(response))
}

POST


app.use(BodyParser.JSON())

app.use(.post, "/users") { request, response, responder in
    var response = response
    let name = request.json["name"]!.string
    let email = request.json["email"]!.string
    response.json(["name": name, "email": email])
    responder(.respond(response))
}

Available Methods

  • get
  • options
  • post
  • put
  • patch
  • delete
  • other(method: String) ex. other(method: "head")

Routing with Request Parameters

You can register route with dynamic URI.

Static Parameters

app.use(.get, "/articles/:id") { request, response, responder in
    var response = response
    response.text("Article ID is: \(req.params["id"]!)")
    responder(.respond(response))
}

Wild Card Pathes

Not implemented yet.

Routing With Middlewares

app.use(.get, middlewares: [JWTAuthenticatable], "/users/secret") { request, response, responder in
 ....
}