前回の記事から時間がたってしまいましたが、今回はセッションを使ってみます。 

Serverのinitを以下のように書き換えて、アクセスのたびにカウントアップするようにします。

init() {
    app.get("") { request in
        let count = (Int(request.session?["count"] ?? "") ?? 0) + 1
        request.session?["count"] = "\(count)"
        return "Hello \(count)"
    }
}

以下のURLで試してみることができます。

http://session.vapor.swiftaweek.com/ (公開終了)

デフォルトではMemorySessionDriver.swiftが使われており、サーバーを再起動すると消えてしまいます。 この辺りは今後の進化に期待ですね。(自分で書いてもよさそう。)

ソースコード