Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase HttpListenerElement

.NET Framework (current version)
 

Publicado: octubre de 2016

Representa el elemento HttpListener del archivo de configuración. Esta clase no puede heredarse.

Espacio de nombres:   System.Net.Configuration
Ensamblado:  System (en System.dll)

System.Object
  System.Configuration.ConfigurationElement
    System.Net.Configuration.HttpListenerElement

public sealed class HttpListenerElement : ConfigurationElement

NombreDescripción
System_CAPS_pubmethodHttpListenerElement()

Inicializa una nueva instancia de la clase HttpListenerElement.

NombreDescripción
System_CAPS_pubpropertyCurrentConfiguration

Obtiene una referencia al nivel superior Configuration instancia que representa la jerarquía de configuración que actual ConfigurationElement pertenece la instancia.(Heredado de ConfigurationElement).

System_CAPS_pubpropertyElementInformation

Obtiene un ElementInformation objeto que contiene la información no personalizable y la funcionalidad de la ConfigurationElement objeto.(Heredado de ConfigurationElement).

System_CAPS_protpropertyElementProperty

Obtiene el ConfigurationElementProperty objeto que representa el ConfigurationElement propio objeto.(Heredado de ConfigurationElement).

System_CAPS_protpropertyItem[ConfigurationProperty]

Obtiene o establece una propiedad o atributo de este elemento de configuración.(Heredado de ConfigurationElement).

System_CAPS_protpropertyItem[String]

Obtiene o establece una propiedad, atributo o elemento secundario de este elemento de configuración.(Heredado de ConfigurationElement).

System_CAPS_pubpropertyLockAllAttributesExcept

Obtiene la colección de atributos bloqueados.(Heredado de ConfigurationElement).

System_CAPS_pubpropertyLockAllElementsExcept

Obtiene la colección de elementos bloqueados.(Heredado de ConfigurationElement).

System_CAPS_pubpropertyLockAttributes

Obtiene la colección de atributos bloqueados (Heredado de ConfigurationElement).

System_CAPS_pubpropertyLockElements

Obtiene la colección de elementos bloqueados.(Heredado de ConfigurationElement).

System_CAPS_pubpropertyLockItem

Obtiene o establece un valor que indica si el elemento está bloqueado.(Heredado de ConfigurationElement).

System_CAPS_protpropertyProperties

Obtiene la colección de propiedades.(Heredado de ConfigurationElement).

System_CAPS_pubpropertyTimeouts

Obtiene el valor predeterminado de elementos de tiempo de espera utilizados para un HttpListener objeto.

System_CAPS_pubpropertyUnescapeRequestUrl

Obtiene un valor que indica si HttpListener usa el URI sin secuencias de escape de formato en lugar del URI convertido.

NombreDescripción
System_CAPS_protmethodDeserializeElement(XmlReader, Boolean)

Lee XML del archivo de configuración.(Heredado de ConfigurationElement).

System_CAPS_pubmethodEquals(Object)

Compara actual ConfigurationElement instancia con el objeto especificado.(Heredado de ConfigurationElement).

System_CAPS_pubmethodGetHashCode()

Obtiene un valor único que representa la actual ConfigurationElement instancia.(Heredado de ConfigurationElement).

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_protmethodInit()

Establece la ConfigurationElement objeto a su estado inicial.(Heredado de ConfigurationElement).

System_CAPS_protmethodInitializeDefault()

Utilizado para inicializar un conjunto predeterminado de valores para el ConfigurationElement objeto.(Heredado de ConfigurationElement).

System_CAPS_protmethodIsModified()

Indica si se ha modificado este elemento de configuración desde la última vez en que se guardo o cargó al implementarlo en una clase derivada.(Heredado de ConfigurationElement).

System_CAPS_pubmethodIsReadOnly()

Obtiene un valor que indica si el objeto ConfigurationElement es de solo lectura.(Heredado de ConfigurationElement).

System_CAPS_protmethodReset(ConfigurationElement)

Restablece el estado interno del objeto ConfigurationElement, incluyendo los bloqueos y las colecciones de propiedades.(Heredado de ConfigurationElement).

System_CAPS_protmethodResetModified()

Restablece el valor de la IsModified método false cuando se implementa en una clase derivada.(Heredado de ConfigurationElement).

System_CAPS_protmethodSerializeElement(XmlWriter, Boolean)

Escribe el contenido de este elemento de configuración en el archivo de configuración cuando se implementa en una clase derivada.(Heredado de ConfigurationElement).

System_CAPS_protmethodSerializeToXmlElement(XmlWriter, String)

Escribe las etiquetas externas de este elemento de configuración en el archivo de configuración cuando se implementa en una clase derivada.(Heredado de ConfigurationElement).

System_CAPS_protmethodSetReadOnly()

Establece el IsReadOnly propiedad para la ConfigurationElement objeto y todos los subelementos.(Heredado de ConfigurationElement).

System_CAPS_pubmethodToString()

Devuelve una cadena que representa al objeto actual. (Heredado de Object).

System_CAPS_protmethodUnmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode)

Modifica la ConfigurationElement objeto que se va a quitar todos los valores que no deben guardarse.(Heredado de ConfigurationElement).

Esta clase corresponde al elemento de configuración < httpListener > Element (Network Settings). Esta clase proporciona acceso mediante programación a información que se puede almacenar en archivos de configuración.

El UnescapeRequestUrl propiedad indica si HttpListener usa el URI sin secuencias de escape de formato en lugar del URI convertido cuando se convierten los valores codificados con porcentaje y otros pasos de normalización.

Cuando un HttpListener instancia recibe una solicitud a través de la http.sys servicio, crea una instancia de la cadena URI proporcionada por http.sys, y lo expone como la HttpListenerRequest.Url propiedad.

El http.sys servicio expone dos cadenas del identificador URI de solicitud:

  • URI sin formato

  • URI convertido

El URI sin formato es el System.Uri proporcionado en la línea de solicitud de una solicitud HTTP:

GET /path/

Host: www.contoso.com

El URI sin formato proporcionado por http.sys para la solicitud que se mencionó anteriormente, es "/ path /". Representa la cadena que sigue el verbo HTTP que se enviaron a través de la red.

El http.sys servicio crea un URI convertido a partir de la información proporcionada en la solicitud usando el URI proporcionado en la línea de solicitud HTTP y el encabezado de Host para determinar el servidor de origen de la solicitud se debería reenviar a. Esto se realiza comparando la información de la solicitud con un conjunto de prefijos URI registrados. La documentación del SDK de servidor HTTP hace referencia a este URI convertido como la HTTP_COOKED_URL estructura.

Para poder comparar la solicitud con los prefijos URI registrados, necesita hacerse alguna normalización a la solicitud. Para obtener el ejemplo encima del URI convertido sería como sigue:

http://www.contoso.com/path/

El http.sys servicio combina el Uri.Host valor de propiedad y la cadena en la línea de solicitud para crear un URI convertido. Además, http.sys y System.Uri clase hacer lo siguiente:

  • Escapes de anulación valores codificados con porcentaje todo.

  • Caracteres no ASCII de codificados con porcentaje se convierte en una representación de caracteres UTF-16. Tenga en cuenta que se admiten caracteres UTF-8 y ANSI/DBCS así como caracteres Unicode (codificación Unicode usando el formato % uXXXX).

  • Ejecuta otros pasos de normalización, como la compresión de la ruta de acceso.

Puesto que la solicitud no contiene toda la información sobre la codificación utilizada para los valores codificados con porcentaje, no es posible determinar la codificación correcta simplemente analizando los valores codificados con porcentaje.

Por lo tanto http.sys proporciona dos claves del registro para modificar el proceso:

Clave del Registro

Valor predeterminado

Descripción

EnableNonUTF8

1

Si es cero, http.sys acepta únicamente direcciones URL codificado en UTF-8.

Si es distinto de cero, http.sys también acepta direcciones URL de la codificación ANSI o DBCS codificados en las solicitudes.

FavorUTF8

1

Si es distinto de cero, http.sys siempre intenta descodificar primero; una dirección URL como UTF-8 si se produce un error en esa conversión y EnableNonUTF8 es distinto de cero, Http.sys, a continuación, intenta descodificarlo como ANSI o DBCS.

Si es cero (y EnableNonUTF8 es distinto de cero), http.sys intenta descodificarlo como ANSI o DBCS; si no es correcta, intenta una conversión de UTF-8.

Cuando HttpListener recibe una solicitud, usa el URI convertido de http.sys como entrada el Url propiedad.

Es necesario para admitir caracteres además de los caracteres y números en los URI. Un ejemplo es el URI siguiente, que se usa para recuperar información del cliente para el cliente número "1/3812":

http://www.contoso.com/Customer('1%2F3812')/

Tenga en cuenta la barra diagonal de codificación de porcentaje en el Uri (% 2F). Esto es necesario, ya que en este caso el carácter de barra diagonal representa los datos y no un delimitador de ruta de acceso.

Pasar la cadena al constructor Uri conducirá al URI siguiente:

http://www.contoso.com/Customer('1/3812')/

Dividir la ruta de acceso en sus segmentos daría lugar a que los elementos siguientes:

Customer('1

3812')

No es la intención del remitente de la solicitud.

Si el UnescapeRequestUrl propiedad se establece en false, si la HttpListener recibe una solicitud, usa el URI sin formato en lugar del URI convertido de http.sys como entrada el Url propiedad.

.NET Framework
Disponible desde 4.0

Cualquier miembro ( Compartido en Visual Basic) estático público de este tipo es seguro para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Volver al principio
Mostrar: