Seguramente, seguramente, hay una forma de configurar el objeto .Net HttpWebRequest para que no genere una excepción cuando se llama a HttpWebRequest.GetResponse() y cualquier 300 o 400 códigos de estado son devueltos?Cómo detener .Net HttpWebRequest.GetResponse() al generar una excepción
Jon Skeet does not think so, así que casi no me atrevo a preguntar, pero me cuesta creer que no haya forma de evitar esto. Los códigos de respuesta 300 y 400 son respuestas válidas en ciertas circunstancias. ¿Por qué nos veríamos obligados a incurrir en los gastos generales de una excepción?
¿Quizás haya alguna configuración de configuración oscura que evadió a Jon Skeet? ¿Tal vez hay un tipo completamente diferente de objeto de solicitud que se puede usar y que no tiene este comportamiento?
(y sí, sé que solo puede detectar la excepción y obtener la respuesta de eso, pero me gustaría encontrar una manera de no tener que hacerlo).
Gracias por cualquier ayuda
Hola Darin Gracias por su respuesta. Usted hace buenos puntos. Siento que las excepciones (debido a su costo) deberían ser opcionales, y estoy sorprendido de que no haya forma de eludir esto. Sus soluciones alternativas son buenas ideas. Voy a investigar más ... – James
Acepto y, lo que es más importante, los servicios web comúnmente devuelven los códigos de estado 400 y 500 para informar entradas inválidas a las llamadas de servicio. En muchos casos, estos no son errores. Por ejemplo, obtenemos 400 códigos de estado devueltos de un determinado servicio web solo para indicar que no hay ningún registro disponible, aunque no es un error. El cuerpo de la respuesta todavía está json con un mensaje para nosotros. Así que estoy de acuerdo en que sería ideal para desactivar las excepciones, razón por la cual yo y muchos otros estamos buscando esta publicación. –