我对 .net 的整个 Web 端很陌生,并且遇到了一个小问题。
我正在尝试执行以下 HttpWebRequest 操作:
String uri = "https://skyid.sky.com/signup/";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.UserAgent = "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)";
request.Method = "GET";
request.GetResponse();
其中 uri 指向 HTTPS 站点。但是当我在 Fiddler 中查看这个时,它删除了我的 UserAgent,只显示 Host 和 Connection: Keep-Alive。
CONNECT skyid.sky.com:443 HTTP/1.1
Host: skyid.sky.com
Connection: Keep-Alive
这是 HTTPS 的正常现象还是我只是遗漏了什么?也许我什至错过了 Fiddler 中的一些东西,它没有向我展示这一点。
任何帮助将不胜感激,谢谢大家!
我认为您没有看到正确的 Fiddler 线路。你所展示的是一个CONNECT
动词,不GET
. The UserAgent
应使用正确设置request.UserAgent
财产。调试请求的另一种方法是配置网络跟踪与 Fiddler 相比,我个人更喜欢您的应用程序级别:
<configuration>
<system.diagnostics>
<sources>
<source name="System.Net" tracemode="protocolonly" maxdatasize="1024">
<listeners>
<add name="System.Net"/>
</listeners>
</source>
</sources>
<switches>
<add name="System.Net" value="Verbose"/>
</switches>
<sharedListeners>
<add
name="System.Net"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="network.log"
/>
</sharedListeners>
<trace autoflush="true"/>
</system.diagnostics>
</configuration>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)