后台 - 我可以让HttpListener正常运行HTTP流量。我遇到了HTTPS流量问题。
问题:如何更改下面的代码,以便我的HttpListener实际上可以获取对“https”网址的浏览器请求?
注意 - 目前firefox的代理设置设置为“localhost:8080”,当我在端口8080(“https:// *:8080 /”)上收听流量时,我在firefox中输入了一个HTTPS网址,我没有接到任何交通? (当我只听http并输入正常的http url时,它工作正常)
_httpListener = new HttpListener();
_httpListener.Prefixes.Add("https://*:8080/");
_httpListener.Start();
感谢
答案 0 :(得分:5)
来自MSDN
如果使用创建HttpListener https,您必须选择一个服务器 该听众的证书。 否则,HttpWebRequest查询 这个HttpListener将会失败 意外关闭连接。
您可以配置服务器证书 和其他监听器选项 HttpCfg.exe。看到 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/http/http/httpcfg_exe.asp 更多细节。可执行文件是 随Windows Server 2003一起提供,或 可以从源代码构建 可在Platform SDK中找到。
虽然不确定100%......
答案 1 :(得分:0)
听起来好像Firefox可能没有像您期望的那样代理HTTPS流量。您的HTTPS请求是否实际在浏览器中呈现(即使HTTPListener中没有流量显示)?
确保您的Firefox浏览器设置为将SSL代理到与HTTP相同的位置,否则请确保选中“将此代理用于所有服务器协议”框。
答案 2 :(得分:0)
检查FW设置是否通过该端口。