HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
if (rangeTo > 0L)
{
request.AddRange(rangeFrom, rangeTo);
}
if (Headers != null)
{
for (int i = 0; i < Headers.Count; i++)
{
string headerName = Headers.GetKey(i);
string headerValue = Headers.Get(i);
string headerNameLowercased = headerName.ToLower();
//TODO: Handle other special headers.
if (headerNameLowercased.Equals("accept"))
{
request.Accept = headerValue;
continue;
}
else if (headerNameLowercased.Equals("user-agent"))
{
request.UserAgent = headerValue;
continue;
}
else if (headerNameLowercased.Equals("referer"))
{
request.Referer = headerValue;
continue;
}
else if (headerNameLowercased.Equals("host"))
{
request.Host = headerValue;
continue;
}
else if (headerNameLowercased.Equals("connection"))
{
request.Connection = headerValue;
continue;
}
request.Headers.Add(headerName, headerValue);
}
}
Некоторые заголовки можно задать только через соответствующие свойства класса HttpWebRequest
. Перечислите все такие свойства, пжлст.
И почему не получается задать значение для заголовка Connection
? Он пишет: Вызвано исключение: "System.ArgumentException" в System.dll. С этим свойством нельзя задавать Keep-Alive и Close.
.
Но ведь в браузерах написано, что установлено одно из этих значений