簡體   English   中英

在c#(。net)system.net.http中,如何將response.statuscode作為int獲取?不要使用HttpWebRequest和HttpWebResponse

[英]In c#( .net) system.net.http, how to get the response.statuscode as an int? Not to use HttpWebRequest and HttpWebResponse

        var hcHandler = new HttpClientHandler();
        //hcHandler.AllowAutoRedirect = false;
        var hc = new HttpClient(hcHandler);
        hc.DefaultRequestHeaders.Add("user-agent", "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)");
        String url = "http://passport.cnblogs.com/login.aspx";
        var task = hc.GetAsync(new Uri(url));
        HttpResponseMessage response = task.Result;

        string statusCode = response.StatusCode.ToString();

我想以整數形式獲取statusCode,我該怎么辦?

HttpResponseMessage.StatusCode是一個HttpStatusCode枚舉,它的底層整數類型是int ,所以你可以把它強制轉換:

int statusCode = (int)response.StatusCode;

HttpStatusCode聲明為枚舉類似:

enum HttpStatusCode
{
     NotFound = 404,
     ...
}

這意味着您只需通過投射即可完成:

int status = (int)HttpStatusCode.NotFound;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM