【问题标题】:Why HttpContext.Session.SetString Lost value in another Action Method为什么 HttpContext.Session.SetString 在另一个 Action 方法中丢失了值
【发布时间】:2022-01-10 01:11:42
【问题描述】:

我的项目配置了 ASP.NET Core Web API。

我已经在 Startup.cs 文件中配置了这些设置:

配置服务:

services.AddSession(option=>{
                option.IdleTimeout = TimeSpan.FromMinutes(2);
                option.Cookie.HttpOnly = true;
                option.Cookie.IsEssential = true;
            });

配置:

app.UseSession();

注意:所有这些方法都在同一个控制器中。

在方法a中:

HttpContext.Session.SetString("key", "value");

在方法b中:

var session = HttpContext.Session.GetString(mobile);

但是运行后,会话变量输出为空,为什么?

【问题讨论】:

    标签: asp.net-web-api asp.net-core-webapi


    【解决方案1】:

    会话适合浏览和查看,但不适合 Web API,因为它是无状态的。

    相反,我们应该使用内存缓存来保存临时数据。甚至我们可以设置过期时间和其他属性,如优先级和...

    最好的问候

    【讨论】:

      猜你喜欢
      • 2017-05-17
      • 2022-11-09
      • 2021-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-12
      相关资源
      最近更新 更多