Errores 407 de proxy por DTD y recursos XML externos
Rastree un 407 inesperado durante la conversión de documentos hacia DTD, esquemas u otros recursos externos que abre el analizador.
Un documento local aún puede provocar un 407 durante la conversión. Su XML puede nombrar un DTD, un esquema o una entidad, y un renderizador puede descargar estilos o imágenes. El cliente que falla puede estar dentro de ese analizador, después de que terminara la descarga original.
Conserve la pila de excepciones y el URI solicitado, y luego compárelos con las declaraciones de entrada o las referencias a recursos. Una solicitud de DTD a un host estándar es otra operación distinta de la solicitud de la página. La conversión de HTML a PDF también puede fallar al obtener recursos remotos.
Para una entrada .NET XmlReader cuyo contrato prohíbe los DTD y la resolución externa, use:
var settings = new XmlReaderSettings
{
DtdProcessing = DtdProcessing.Prohibit,
XmlResolver = null
};Pase esos valores al componente que realmente analiza el documento. DtdProcessing elige cómo tratar un DTD; XmlResolver controla el acceso externo. Prohibit rechaza un documento con DTD, pero no elimina la declaración. Si el flujo de trabajo requiere una, elija una resolución local aprobada o un resolver dirigido explícitamente.
Mantenga los valores predeterminados ligados a la API y al entorno de ejecución. XmlReaderSettings usa Prohibit de forma predeterminada, y su resolver predeterminado pasó a null a partir de .NET Framework 4.5.2. Un convertidor de terceros puede sobrescribirlos o usar otro analizador.
Cambiar una declaración XHTML por un doctype HTML puede afectar a un convertidor, pero no configura su proxy. Determine los recursos necesarios y su política de carga; la autenticación en el cliente de la página inicial no autentica a este segundo cliente.