【问题标题】:In Every Request New Session is Generating in the web api在每个请求中,新会话都在 web api 中生成
【发布时间】:2019-09-05 03:16:09
【问题描述】:

每当控制器中出现新请求时,都会生成新的会话 ID,因此我会一直丢失之前的值。

使用 .net Core API 2.2.0

“启动.cs”

        services.Configure<CookiePolicyOptions>(options =>
        {
            // This lambda determines whether user consent for non-essential cookies is needed for a given request.
            options.CheckConsentNeeded = context => false; // Default is true, make it false
            options.MinimumSameSitePolicy = SameSiteMode.None;
        });
        services.AddDistributedMemoryCache();
        services.AddSession();

【问题讨论】:

  • 添加 app.UseSession();在启动时配置。
  • 我也加了

标签: c# .net session asp.net-core-2.0


【解决方案1】:

您似乎正在处理一个 API。如果我不得不猜测,您不会使用服务器最初通过 Set-Cookie 响应标头返回的值在每个请求中传递 Cookie 标头。 Web 浏览器会自动为 Web 应用程序请求处理此类事情。但是,API 是一个不同的包,您需要手动完成。

也就是说,API假定是无状态的,因此通常不支持会话和/或 cookie 的概念。您根本不应该在 API 项目中使用Session。每个请求都应包含为该请求提供服务所需的所有数据。否则,您将在 API 中引入各种问题。

【讨论】:

    猜你喜欢
    • 2021-04-21
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-23
    相关资源
    最近更新 更多