编辑:我也不相信 HttpListener 做任何事情
- 所以响应标头!= 下一篇文章的请求标头。
- 为什么浏览器以正确的请求标头开头,但来自我的客户端的简单 GET HTTP / 1.1 看起来不一样,即使每个域的原始请求标头多次更改???????
- 这也不能正确使用 cookie。这是为什么?
我该如何做一些事情来给我这个浏览器的魔力?
*WebClient 没有 .RequestHeaders。
*将 HttpWebRequest 标头与 Chrome/Fiddler 嗅探进行比较。
using System.Net;
private void Form1_Load(object sender, EventArgs e)
{
CookieContainer cookieJar = new CookieContainer();
cookieJar.GetCookies(new Uri("https://www.google.com"));
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://www.google.com");
request.CookieContainer = cookieJar;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
this.Text = request.Headers.Count.ToString();
WebHeaderCollection header = request.Headers;
for (int i = 0; i < header.Count; i++)
{
richTextBox1.AppendText(header.GetKey(i) + ": " + header[i] + "\n");
}
}
Fiddler/Chrome 组合返回 10 个请求标头;客户端返回 2。
另外为什么标题“Accept-Encoding:gzip,deflate,sdch”总是使响应成为一些奇怪的2字符数据?