gpt4 book ai didi

c# - 中间件中的 HttpContext .NET 核心保存实例

转载 作者:太空狗 更新时间:2023-10-29 22:36:16 26 4
gpt4 key购买 nike

在中间件中存储 HttpContext 实例是否安全?

例子:

public class TestMiddleware
{
private readonly RequestDelegate next;
private HttpContext context;
public TestMiddleware(RequestDelegate next)
{
this.next = next;
}

public async Task Invoke(HttpContext context)
{
try
{
this.context = context;

我想在其他私有(private)方法中使用它来处理它,所以我可以将它作为参数传递给那些函数,或者按照示例中所示使用它。

但是它是线程安全的吗?

最佳答案

But is it thread safe?

不,不是,因为中间件必然是单例。如果您将特定的 HttpContext 存储在共享字段中,它可能会在另一个请求期间被重用(这会很糟糕)。

关于c# - 中间件中的 HttpContext .NET 核心保存实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38854690/

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