要从HttpHeaders
(在我的情况下为HttpResponseHeaders
)实例中检索标头值,我必须调用GetValues
,例如response.Headers.GetValues("Content-Length")
。这很不方便。
似乎支持以下内容很简单:
public IEnumerable<string> this[string headerName]
{
return GetValues(GetHeaderDescriptor(headerName));
}
[HttpHeaders
不支持此功能以减少麻烦的response.Headers["Content-Length"]
吗?
如果您希望获得标头值的直接方法,则可以使用特定于Http的实现,例如HttpWebRequest和HttpWebResponse。
示例:
var testRequest = (HttpWebRequest)WebRequest.Create("https://stackoverflow.com/");
var testResponse = (HttpWebResponse)testRequest.GetResponse();
Console.WriteLine(testResponse.Headers["Content-Length"]);