Compartir a través de


HTTP

.NET Framework proporciona numerosas prestaciones para manejar el protocolo HTTP, en el que se basa la mayor parte del tráfico total en Internet, mediante las clases HttpWebRequest y HttpWebResponse. Estas clases, derivadas de WebRequest y WebResponse, se devuelven de manera predeterminada cada vez que el método estático WebRequest.Create encuentra un identificador URI (Uniform Resource Identifier, identificador uniforme de recursos) que empieza con "http" o "https". En la mayoría de los casos, las clases WebRequest y WebResponse proporcionan todos los elementos necesarios para realizar la solicitud, pero si se necesita acceso a las características específicas de HTTP expuestas como propiedades, se puede convertir el tipo de estas clases a HttpWebRequest o HttpWebResponse.

HttpWebRequest y HttpWebResponse encapsulan una transacción de solicitud y respuesta estándar de HTTP y proporcionan acceso a encabezados HTTP comunes. Estas clases también admiten la gran mayoría de las características de HTTP 1.1, incluidos la canalización, la fragmentación, la autenticación, la autenticación previa, el cifrado, la compatibilidad con servidores proxy, la validación de certificados de los servidores y la administración de conexiones. Los encabezados personalizados y los encabezados no proporcionados a través de propiedades se pueden almacenar en la propiedad Headers, y el acceso a ellos se puede realizar a través de esta propiedad.

HttpWebRequest es la clase predeterminada que utiliza WebRequest y no es necesario su registro antes de pasar un identificador URI al método WebRequest.Create.

Puede hacer que la aplicación siga las redirecciones HTTP automáticamente estableciendo la propiedad AllowAutoRedirect como true (valor predeterminado). La aplicación redirigirá las solicitudes y la propiedad ResponseURI de HttpWebResponse contendrá el recurso Web real que responde a la solicitud. Si se establece AllowAutoRedirect en false, la aplicación debe ser capaz de controlar las redirecciones como errores de protocolo HTTP.

Las aplicaciones reciben los errores de protocolo HTTP mediante la detección de una excepción WebException con la propiedad Status establecida en WebExceptionStatus.ProtocolError. La propiedad Response contiene el objeto WebResponse enviado por el servidor e indica el error HTTP real encontrado.

Vea también

Tareas

Cómo obtener acceso a propiedades específicas de HTTP

Conceptos

Acceso a Internet a través de un proxy
Utilizar protocolos de aplicaciones