【问题标题】:How to write and check cookie in Dot Net Core如何在 Dot Net Core 中编写和检查 cookie
【发布时间】:2018-09-06 01:39:56
【问题描述】:

我正在尝试创建一个基本 cookie 并检查它在我的代码中是否可用,但它不起作用,我怀疑我遗漏了一些明显的东西。

private JwtSecurityToken GetJsonWebTokenFromCookie()
{
    var personId = 0;
    var jwt = new JwtSecurityToken();

#if DEBUG

    Response.Cookies.Append(".FAPPSOUSR", "pid=48527257", new CookieOptions
    {
        Domain = "localhost",
        Expires = DateTime.Now.AddDays(1),
        Path = "/",
    });

#endif

    var cookieValueFromContext = HttpContext.Request.Cookies[".FAPPSOUSR"];

    if (string.IsNullOrEmpty(cookieValueFromContext)) return null;

    if (Request.Cookies["pid"] != null)
    {
        var value = Request.Cookies["pid"];
        int.TryParse(value, out personId);
        if (personId == 0) return null;
    }

    jwt.Claims.Append(new Claim("nameid", personId.ToString()));
    return jwt;
}

这始终为空:

var cookieValueFromContext = HttpContext.Request.Cookies[".FAPPSOUSR"];

【问题讨论】:

  • cookie 真的设置了吗?

标签: c# cookies .net-core


【解决方案1】:

我已经在 http cookie 之上编写了包装器,这有助于简化使用。它具有静音功能。

  • 强类型
  • 保护 Cookie 数据的安全
  • 配置 CookieManager 的简单选项
  • 易于使用

试试here

在启动类的配置服务中添加CookieManager

//add CookieManager
services.AddCookieManager();

获取 Cookie 对象

MyCookie objFromCookie = _cookieManager.Get<MyCookie>("Key");

设置 Cookie 对象

_cookieManager.Set("Key", cooObj, 60);

希望对你有帮助

【讨论】:

    猜你喜欢
    • 2018-08-09
    • 2017-06-22
    • 1970-01-01
    • 2017-01-26
    • 2021-10-21
    • 1970-01-01
    • 1970-01-01
    • 2017-02-12
    • 2017-04-23
    相关资源
    最近更新 更多