代码之家  ›  专栏  ›  技术社区  ›  Angela

无法访问已释放的对象。对象名称:“系统。网。Http。HttpMessageInvoker

  •  0
  • Angela  · 技术社区  · 4 年前

    我正在使用应用程序服务。NET Framework 4.6.1(公开一些REST端点的web应用程序),托管在Azure中。 我在生产中偶尔会遇到这个错误(从未在内部环境中出现过)。

    Cannot access a disposed object. Object name: 'System.Net.Http.HttpMessageInvoker'. Cannot access a disposed object. Object name: 'System.Net.Http.HttpMessageInvoker'. 
    
    System.ObjectDisposedException:
       at System.Net.Http.HttpMessageInvoker.CheckDisposed (System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
       at System.Net.Http.HttpMessageInvoker.SendAsync (System.Net.Http, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)
       at System.Web.Http.Owin.HttpMessageHandlerAdapter+<InvokeCore>d__0.MoveNext (System.Web.Http.Owin, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35)
       at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
       at Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.IntegratedPipelineContextStage+<RunApp>d__7.MoveNext (Microsoft.Owin.Host.SystemWeb, Version=4.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35)
       at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
       at Microsoft.Owin.Security.Infrastructure.AuthenticationMiddleware`1+<Invoke>d__5.MoveNext (Microsoft.Owin.Security, Version=4.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35)
       at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
       at Microsoft.Owin.Security.Infrastructure.AuthenticationMiddleware`1+<Invoke>d__5.MoveNext (Microsoft.Owin.Security, Version=4.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35)
       at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
       at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089)
    

    错误出现在多个端点上,从日志中可以看出,它是在本次调用中发出的:

    return Request.CreateResponse(HttpStatusCode.OK, fileInfoResponse);
    

    知道为什么会这样吗?我已经检查过了

    0 回复  |  直到 4 年前