gpt4 book ai didi

asp.net-core - IHttpContextAccessor HttpContext 始终为 null

转载 作者:行者123 更新时间:2023-12-02 03:08:16 25 4
gpt4 key购买 nike

当我尝试从 IHttpContextAccessor 字段始终为空获取 httpcontext 时遇到问题。

这是我的startup.cs

    public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
}

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
.....

// This is always null
var httpContext = app.ApplicationServices.GetService<IHttpContextAccessor>().HttpContext;

.....
}

最佳答案

Configure 方法中,您始终会遇到 null HttpContext。

此方法用于指定 ASP.NET 应用程序在应用程序启动时如何响应 HTTP 请求和调用,而不是每次 HTTP 请求。这就是为什么没有什么可以填充到 HttpContext 中的原因。

您需要在服务类中传递IHttpContextAccessor,并在请求处理期间调用IHttpContextAccessor.HttpContext。您可以在这个 SO post 中查看与获取 HTTP 上下文的“类似”情况.

关于asp.net-core - IHttpContextAccessor HttpContext 始终为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44343153/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com