Che cosa significa questo errore? L’host remoto ha chiuso la connessione. Il codice di errore 0 x 80070057

Anche se un paio di persone hanno chiesto questa domanda sembra che ci sia problema è diverso dal mio. Come la maggior parte di loro sembrano avere i numeri di riga o il problema potrebbe essere causato con ViewState.

Sto usando Asp.net 4.0 MVC 2.0 quindi non credo che sto usando ViewState. Il mio errore non mi da i numeri di riga. Quindi non ho idea di che cosa è la causa o se nel mio codice.

System.Web.HttpException (0x80070057): The remote host closed the connection. The error code is 0x80070057.
   at System.Web.Hosting.IIS7WorkerRequest.RaiseCommunicationError(Int32 result, Boolean throwOnDisconnect)
   at System.Web.Hosting.IIS7WorkerRequest.ExplicitFlush()
   at System.Web.HttpResponse.Flush(Boolean finalFlush)
   at System.Web.HttpResponse.Flush()
   at System.Web.HttpResponse.End()
   at System.Web.HttpResponse.Redirect(String url, Boolean endResponse, Boolean permanent)
   at System.Web.HttpResponseWrapper.Redirect(String url)
   at MySolutionFile.Domain.RequiresSSL.OnActionExecuting(ActionExecutingContext filterContext)
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClassd.<>c__DisplayClassf.<InvokeActionMethodWithFilters>b__c()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func`1 continuation)
   at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClassd.<>c__DisplayClassf.<InvokeActionMethodWithFilters>b__c()
   at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList`1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
   at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)
   at System.Web.Mvc.Controller.ExecuteCore()
   at System.Web.Mvc.ControllerBase.Execute(RequestContext requestContext)
   at System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext)
   at System.Web.Mvc.MvcHandler.<>c__DisplayClass8.<BeginProcessRequest>b__4()
   at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass1.<MakeVoidDelegate>b__0()
   at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass8`1.<BeginSynchronous>b__7(IAsyncResult _)
   at System.Web.Mvc.Async.AsyncResultWrapper.WrappedAsyncResult`1.End()
   at System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult)
   at System.Web.Mvc.MvcHandler.System.Web.IHttpAsyncHandler.EndProcessRequest(IAsyncResult result)
   at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Chi sa perché?

Vedere stackoverflow.com/a/22992379/17373 per un esempio di come la cattura di questo errore e ignorarlo.

OriginaleL’autore chobo2 | 2010-09-24

2 risposte

  1. 1

    Server non poteva invia la risposta al client. Perdita della connessione di rete sul client potrebbe essere una causa.

    Non sono sicuro se con la chiusura del browser/scheda molto tempo preciso sarebbe anche dare l’errore.

    Hmm sono state pensate che questo è stato causato. C’è qualche cosa che potrebbe fermare questo errore accadendo o è qualcosa che mi basta per vivere con se questo è lo scenario è davvero quello che pensi tu.
    Se era quello che ho descritto sopra, è qualcosa che si deve vivere con. È la natura della rete, un client può staccare. Sono proprio o di qualcun altro in grado di ottenere questo errore o è qualcosa che hai scelto dai log?
    Questa è la prima volta che ho mai visto questo errore. ELMAH mi ha appena inviato una notifica di errore.
    Quindi sì, è qualcosa che si deve vivere con il cliente / disconnessione può causare diversi luoghi dove asp.net scrive per la risposta. Non è possibile evitare.
    Yep… vedi qui per conferma: github.com/SignalR/SignalR/issues/2632

    OriginaleL’autore eglasius

  2. 3

    Siamo stati miscelazione “di Risposta.Redirect” con “return()” che ha causato questo problema. Il browser è stato deviato, ma abbiamo provato a tornare ancora vista…

    CODICE CATTIVO

        switch (userType)
        {
            case "None":
                Response.Redirect("http://" + host + "/");
                break;
            default:
                Response.Redirect(internalwebhost + "/exit/");
                break;
        }
    
        return View();

    CODICE MIGLIORE

        switch (userType)
        {
            case "None":
                url = "http://" + host + "/";
                break;
            default:
                url = internalwebhost + "/exit/";
                break;
        }
    
        return new RedirectResult(url);
    Una Risposta.Fine() o Flush() potrebbe risolvere il problema, ma è molto meglio per restituire un RedirectResult

    OriginaleL’autore Peter Gfader

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *