我正在尝试创建一个基本的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"];
答案 0 :(得分:0)
我在http cookie的顶部编写了包装程序,这有助于简化使用。它具有静音功能。
尝试here
在启动类的配置服务中添加CookieManager
//add CookieManager
services.AddCookieManager();
获取Cookie对象
MyCookie objFromCookie = _cookieManager.Get<MyCookie>("Key");
设置Cookie对象
_cookieManager.Set("Key", cooObj, 60);
希望对您有帮助