HEAD与WebClient?

25 .net webclient http head

我将假设答案是否定的....有没有办法使用WebClient发送HEAD方法并将标题作为字符串或类似的东西返回?

btl*_*log 22

你是对的WebClient不支持这个.如果需要此功能,可以使用HttpWebRequest并将方法设置为HEAD:

System.Net.WebRequest request = System.Net.WebRequest.Create(uri);
request.Method = "HEAD";
request.GetResponse();
Run Code Online (Sandbox Code Playgroud)


小智 17

另一种方法是从WebClient继承并覆盖GetWebRequest(Uri地址).

    public class ExWebClient : WebClient
    {
        public string Method
        {
            get;
            set;
        }

        protected override WebRequest GetWebRequest(Uri address)
        {
            WebRequest webRequest = base.GetWebRequest(address);

            if (!string.IsNullOrEmpty(Method))
                webRequest.Method = Method;

            return webRequest;
        }
    }
Run Code Online (Sandbox Code Playgroud)