You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Ktor中call.response.cookies.append()设置Cookie过期时间?

设置Cookie过期时间的方法

你使用call.response.cookies.append()设置Cookie时,只需在第三个参数传入配置对象,通过expires或maxAge字段即可指定过期时间,两种方式的具体用法如下:

1. 用expires指定具体过期日期

通过创建一个Date对象来定义Cookie的失效时间,示例代码:

// 生成7天后的日期作为过期时间
const expireDate = new Date();
expireDate.setDate(expireDate.getDate() + 7);

call.response.cookies.append("token", "$token", {
  expires: expireDate
});

expires接收标准的Date实例,Cookie会在该日期到来后自动失效。

2. 用maxAge设置相对过期时长(单位:秒)

如果想从当前时间开始计算过期时长,用maxAge更直接,它的取值是秒数,示例:

// 设置Cookie 7天后失效(7天 = 7*24*60*60 = 604800秒)
call.response.cookies.append("token", "$token", {
  maxAge: 604800
});

这种方式不需要手动计算具体日期,适合按时长设置过期的场景。

额外说明

  • 如果不指定expires或maxAge,Cookie默认是会话Cookie,关闭浏览器后就会被清除。
  • 你还可以在配置对象中添加path、domain、secure等其他属性,进一步控制Cookie的作用范围和安全性。

内容的提问来源于stack exchange,提问作者UndercoverDog

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 21:34:53