There was an error while loading. Please reload this page.
为了添加cookie支持到你的Ring处理器,你需要在你的wrap-cookies中间件中包装它:
wrap-cookies
(use 'ring.middleware.cookies) (def app (wrap-cookies your-handler))
这会添加:cookies key到请求map中,这个请求map将会包含一个像这样的cookies map:
:cookies
{"session_id" {:value "session-id-hash"}}
想要设置一个cookie,你需要添加一个:cookies key到你的响应map:
{:status 200 :headers {} :cookies {"session_id" {:value "session-id-hash"}} :body "Setting a cookie."}
不但可以设置cookie的值,你也可以设置额外的属性:
:domain
:path
:secure
:http-only
:max-age
:expires
:same-site
所以,如果你想要一个安全的cookie,在一小时内到期,你可以使用:
{"secret" {:value "foobar", :secure true, :max-age 3600}}