Toolbelt.blazor.httpclientinterceptor: Ver el mensaje que viene del servidor

Creado en 22 ene. 2020  ·  7Comentarios  ·  Fuente: jsakamoto/Toolbelt.Blazor.HttpClientInterceptor

¿Es posible ver el mensaje de respuesta proveniente del servidor y, de ser así, podría publicar un ejemplo?

Estoy tratando de usar esto para tener en el lugar donde coloco el brindis de "error", por lo que necesito poder ver cuándo la solicitud devuelve el error.

¡Gracias!

Todos 7 comentarios

Una solución es cambiar el método SendAsync a:

protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
        {
            HttpResponseMessage response = null;
            try
            {
                BeforeSend?.Invoke(this, request);
                response = await (SendAsyncMethod.Invoke(Handler, new object[] { request, cancellationToken }) as Task<HttpResponseMessage>);
                return response;
            }
            finally
            {
                AfterSend?.Invoke(this, response);
            }
        }

y los manejadores de eventos para

/// <summary>
/// Occurs before a HTTP request sending.
/// </summary>
public event EventHandler<HttpRequestMessage> BeforeSend;

/// <summary>
/// Occurs after received a response of a HTTP request. (include it wasn't succeeded.)
/// </summary>
public event EventHandler<HttpResponseMessage> AfterSend;

Tomé esta sugerencia. Sorta parece que así es como debería ser en primer lugar. Hace que este interceptor sea significativamente más útil, a menos que no entienda la utilidad de EventArgs e

¡Gracias por los buenos comentarios! 👍

Publiqué "Blazor WebAssembly (lado del cliente) HttpClient Interceptor" v.6.1.0 que incluye la nueva función sugerida por @khamang .

Ver también: https://github.com/jsakamoto/Toolbelt.Blazor.HttpClientInterceptor/#the -arguments-of-event-handler

Entonces, ¿esto debería arreglarse? Sigo recibiendo un error si quiero acceder al contenido de la respuesta en AfterSend.
Dice en el Servicio que hace que http.PostAsync no pueda acceder al cuerpo porque está bloqueado

@TheSwerik Gracias por informar.

Entonces, ¿esto debería arreglarse? me sigue dando error...

Este hilo no es un informe de error, es un hilo de propuesta de nueva característica.
Nunca supe que tiene un problema que reportaste ahora.

Intentaré reproducir ese problema más tarde e intentaré solucionarlo si pudiera reproducirlo.

Oh, pensé que esto encaja aquí, crearé un problema nuevo y más detallado

@TheSwerik ¡Gracias!

¿Fue útil esta página
0 / 5 - 0 calificaciones

Temas relacionados

thelamb picture thelamb  ·  5Comentarios

GregariousJB picture GregariousJB  ·  8Comentarios

kalebpederson picture kalebpederson  ·  6Comentarios

antis81 picture antis81  ·  25Comentarios

prabirshrestha picture prabirshrestha  ·  13Comentarios