示例是调用谷歌短网址的API.

1. HttpClient方式:

public static async void DoAsyncPost()
        {
            DateTime dateBegin = DateTime.Now;

            string url = @"https://www.googleapis.com/urlshortener/v1/url?key=AIzaSyAK2z18";
            var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };

            using (var http = new HttpClient(handler))
            {
                RequestModel model = new RequestModel
                {
                    longUrl = "https://msdn.microsoft.com/zh-CN/library/system.net.http.httpclient(VS.110).aspx"
                };

                string data = SimpleJson.SerializeObject(model);
                HttpContent content = new StringContent(data);

                content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
                var response = await http.PostAsync(url, content);

                response.EnsureSuccessStatusCode();

                var result = await response.Content.ReadAsStringAsync();

                ResponseModel responseModel = (ResponseModel)SimpleJson.DeserializeObject(result.ToString(), typeof(ResponseModel));

                http.Dispose();
                response.Dispose();

                DateTime dateEnd = DateTime.Now;
                TimeSpan span = dateEnd.Subtract(dateBegin);
                Console.WriteLine("HttpClient Time Span is:{0}", span.Milliseconds);

                Console.WriteLine(result);
            }
        }
View Code

相关文章: