.NET HttpListener - no hay tráfico cuando se escucha “https: //*.8080” cuando se establece proxy de navegador?
-
27-09-2019 - |
Pregunta
Antecedentes - yo puede conseguir HttpListener trabajar muy bien para el tráfico HTTP. Tengo problemas con el tráfico HTTPS sin embargo.
PREGUNTA: ¿Cómo se puede cambiar el código de abajo de modo que una petición del navegador a una dirección URL "https" en realidad será recogido por mi HttpListener
Notas - En el momento de la configuración del proxy de Firefox ajustados a "localhost: 8080", cuando escucha el tráfico en el puerto 8080 ( "https: // *: 8080 /"), y que introduzca un URL https en Firefox, estoy recibiendo ningún tráfico siendo recogido? (Cuando escucho sólo http y entrar en la normalidad http URL funciona bien)
_httpListener = new HttpListener();
_httpListener.Prefixes.Add("https://*:8080/");
_httpListener.Start();
gracias
Solución
Si crea una HttpListener usando HTTPS, debe seleccionar un servidor Certificado para ese oyente. De lo contrario, una consulta de HttpWebRequest este HttpListener fallará con una inesperado cerca de la conexión.
Se puede configurar certificados de servidor y otras opciones del receptor mediante el uso de HttpCfg.exe. Ver http: // MSDN. microsoft.com/library/default.asp?url=/library/en-us/http/http/httpcfg_exe.asp para más detalles. El ejecutable es incluido en Windows Server 2003 o puede ser construido a partir de código fuente disponible en el SDK de la plataforma.
No está seguro al 100%, aunque ...
Otros consejos
Parece que Firefox no puede estar representando el tráfico HTTPS como se esperaba. ¿Su solicitud HTTPS en realidad hacen en el navegador (a pesar de que no se presenta en su tránsito hasta HttpListener)?
Asegúrese de que su navegador Firefox está configurado para SSL proxy para la misma ubicación que HTTP, o bien asegúrese de que la casilla de "Usar este proxy para todos los protocolos de servidor" está marcada.
Compruebe la configuración FW si pasa ese puerto en absoluto.