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

如何通过ServiceStack方法将Cookie的SameSite设置为Strict?

如何在ServiceStack中为Cookie设置SameSite=Strict

你可以通过以下两种方式实现:

方法一:使用ServiceStack自带的Cookie类(推荐)

ServiceStack的Cookie类(位于ServiceStack命名空间)内置了SameSite属性,直接使用它替代你当前的Cookie对象即可:

var cookie = new ServiceStack.Cookie("TestCookie", "Value")
{
    Path = "/",
    Expires = DateTime.UtcNow.AddMinutes(60),
    Secure = true,
    HttpOnly = true,
    SameSite = SameSiteMode.Strict
};
this.Response.Cookies.Add(cookie);

方法二:手动构造Set-Cookie响应头

如果因版本限制无法使用带SameSite属性的Cookie类,可以直接手动添加Set-Cookie响应头,完整指定Cookie参数:

// 格式化过期时间为RFC1123格式
var expires = DateTime.UtcNow.AddMinutes(60).ToString("R");
var cookieHeader = $"TestCookie=Value; Path=/; Expires={expires}; Secure; HttpOnly; SameSite=Strict";
this.Response.Headers.Add("Set-Cookie", cookieHeader);

注意:你配置的UseSameSiteCookies = true仅会自动为ServiceStack的会话Cookie(如ss-id、ss-pid)添加SameSite属性,自定义Cookie需要手动设置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 16:43:15