27 lines
646 B
Lua
27 lines
646 B
Lua
-- cookie.lua
|
|
|
|
function cookie_set(name, value, options)
|
|
__response.cookies = __response.cookies or {}
|
|
local opts = options or {}
|
|
local cookie = {
|
|
name = name,
|
|
value = value or "",
|
|
path = opts.path or "/",
|
|
domain = opts.domain,
|
|
secure = opts.secure ~= false,
|
|
http_only = opts.http_only ~= false
|
|
}
|
|
if opts.expires and opts.expires > 0 then
|
|
cookie.max_age = opts.expires
|
|
end
|
|
table.insert(__response.cookies, cookie)
|
|
end
|
|
|
|
function cookie_get(name)
|
|
return __ctx.cookies and __ctx.cookies[name]
|
|
end
|
|
|
|
function cookie_delete(name, path, domain)
|
|
return cookie_set(name, "", {expires = -1, path = path or "/", domain = domain})
|
|
end
|