C# HttpClient 获取网络时间

本文介绍如何使用HttpClient从百度头信息中抓取日期,通过LocalDateTime确保获取到的是本地准确时间,以应对时间设置变动的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要思想就是访问百度,从头信息里提取信息,DateTime 的LocalDateTime 就是对应本地的时间,可以避免本机更改时间无法获得正确时间

private  async void  getRealTime()
        {
            var uri = "https://www.baidu.com";
            var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.None };

            using (var httpclient = new HttpClient(handler))
            {
                //httpclient.BaseAddress = new Uri(uri);
                httpclient.DefaultRequestHeaders.Accept.Clear();
                httpclient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                HttpResponseMessage response = await httpclient.GetAsync(uri);
                System.Net.Http.Headers.HttpResponseHeaders headerCollection;
                if (response.IsSuccessStatusCode)
                {
                    headerCollection = response.Headers;
                    dynamic data = headerCollection.Get("Date");
                    var localTime1 = data.LocalDateTime;
                    Stream myResponseStream = response.Content.ReadAsStreamAsync().Result;
                        StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
                        string result = myStreamReader.ReadToEnd();
                        myStreamReader.Close();
                        myResponseStream.Close();
                }
            }


        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值