TL;DR

Mocket では、Cookie の設定と削除を HttpResponse のメソッドで、取得を HttpRequest のメソッドで行う。

内容

Cookie を設定するには HttpResponse の set_cookie メソッドを使う。有効期限や HttpOnly などの属性は引数で指定する。

app.get("/login", evt => {
  evt.res.set_cookie("session_id", "12345", max_age=3600, http_only=true)
  "Logged in"
})

Cookie を取得するには HttpRequest の get_cookie メソッドを使う。戻り値は Option なので、パターンマッチで有無を分ける。

app.get("/dashboard", evt => match evt.req.get_cookie("session_id") {
  Some(cookie) => "Session ID: " + cookie.value
  None => "Not logged in"
})

Cookie を削除するには HttpResponse の delete_cookie メソッドを使う。

app.get("/logout", evt => {
  evt.res.delete_cookie("session_id")
  "Logged out"
})

キーワード

関連