最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#之HttpClient的同步使用方式

 更新時間:2023年11月07日 14:38:02   作者:cnwjl  
這篇文章主要介紹了C#之HttpClient的同步使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

C# HttpClient的同步使用

無返回值 函數(shù)

  private async void  getservertime()
        {
            string servertime = "0";//實際應(yīng)用時用全局變量 ,傳入?yún)?shù)不可用ref out關(guān)鍵字
            HttpClientHandler handler1 = new HttpClientHandler();
            handler1.AllowAutoRedirect = false;
            HttpClient httpClient1 = new HttpClient(handler1);
            httpClient1.DefaultRequestHeaders.Add("user-agent", UserAgent);
            if (InternetGetConnectedState(0, 0) == false)
            {
                //未聯(lián)網(wǎng)
                servertime = "0";
                return ;
            }
             
            try
            {
                HttpResponseMessage  result  = await  httpClient1.GetAsync("https://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp");
               
                if (result.IsSuccessStatusCode)
                {
                    result.EnsureSuccessStatusCode();
                    string responseBodyAsText = await result.Content.ReadAsStringAsync();
                    JObject sertime = JObject.Parse(responseBodyAsText);                  
                    servertime=sertime["data"]["t"].ToString();                 
                }
                    
                else
                {
                    servertime= "0";
                }
               
 
            }
            catch (HttpRequestException hre)
            {
                servertime = "0"; ;
            }
            handler1.Dispose();
            httpClient1.Dispose();
 
 
        }

有返回值函數(shù)

    private string getservertime()
 
        {
            HttpClientHandler handler1 = new HttpClientHandler();
           
            handler1.AllowAutoRedirect = false;
            HttpClient httpClient1 = new HttpClient(handler1);
            httpClient1.DefaultRequestHeaders.Add("user-agent", UserAgent);
            if (InternetGetConnectedState(0, 0) == false)
            {
              //未聯(lián)網(wǎng)
                return "0";
            }
             
            try
            {
                var task = httpClient1.GetAsync("https://api.m.taobao.com/rest/api3.do?api=mtop.common.getTimestamp");
                task.Wait();
                if (task.Result.IsSuccessStatusCode)
                    task.Result.EnsureSuccessStatusCode();
                else
                {
                    return "0";
                }
                HttpResponseMessage response = task.Result;
 
                //  txtStatusCode.Text = response.StatusCode + " " + response.ReasonPhrase + Environment.NewLine;
 
                var result = response.Content.ReadAsStringAsync();
                string responseBodyAsText = result.Result;
 
                JObject sertime = JObject.Parse(responseBodyAsText);
                handler1.Dispose();
                httpClient1.Dispose();
                return (sertime["data"]["t"].ToString());
 
 
            }
            catch (HttpRequestException hre)
            {
                hre.ToString();
            }
            handler1.Dispose();
            httpClient1.Dispose();
            return "0";
 
          
        }

C# HttpClient對接接口

最近在寫對接DHL接口的項目,大致了解了一些對接接口的請求方法。

POST帶參數(shù),賬號認證請求

HttpClient client = new HttpClient();
//添加用戶身份認證
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(Encoding.UTF8.GetBytes($"{"賬號"}:{"密碼"}")));

HttpContent httpContent = new StringContent(stringBuilder.ToString(), Encoding.UTF8);
httpContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");

Uri url = new Uri("請求鏈接");
//httpContent為請求攜帶的Json數(shù)據(jù)
var msg = client.PostAsync(url, httpContent).Result.Content.ReadAsStringAsync().Result;

Get帶賬號認證請求

 HttpClient client = new HttpClient();
 //添加用戶身份認證
 client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(Encoding.UTF8.GetBytes($"{"賬號"}:{"密碼"}")));
 
Uri url = new Uri("請求鏈接");
var msg = client.GetAsync(url).Result.Content.ReadAsStringAsync().Result;

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • c#版json數(shù)據(jù)解析示例分享

    c#版json數(shù)據(jù)解析示例分享

    JSON(全稱為JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式。它是基于JavaScript語法標準的一個子集。 JSON采用完全獨立于語言的文本格式,可以很容易在各種網(wǎng)絡(luò)、平臺和程序之間傳輸。JSON的語法很簡單,易于人閱讀和編寫,同時也易于機器解析和生成
    2014-03-03
  • C#連接到sql server2008數(shù)據(jù)庫的實例代碼

    C#連接到sql server2008數(shù)據(jù)庫的實例代碼

    這篇文章主要介紹了C#連接到sql server2008數(shù)據(jù)庫的實例代碼,需要的朋友可以參考下
    2017-09-09
  • 一句話清晰總結(jié)C#的協(xié)變和逆變

    一句話清晰總結(jié)C#的協(xié)變和逆變

    這篇文章介紹了C#協(xié)變和逆變的工作原理,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-10-10
  • 解析C#設(shè)計模式編程中備忘錄模式的運用

    解析C#設(shè)計模式編程中備忘錄模式的運用

    這篇文章主要介紹了C#設(shè)計模式編程中備忘錄模式的運用,備忘錄模式用來保存與對象有關(guān)的數(shù)據(jù)用以在將來對對象進行復原,需要的朋友可以參考下
    2016-02-02
  • C#中使用ArrayPool和MemoryPool實例

    C#中使用ArrayPool和MemoryPool實例

    對資源的可復用是提升應(yīng)用程序性能的一個非常重要的手段,比如本篇要分享的 ArrayPool 和 MemoryPool,它們就有效的減少了內(nèi)存使用和對GC的壓力,從而提升應(yīng)用程序性能。感興趣的可以了解一下
    2021-05-05
  • WinForm窗體調(diào)用WCF服務(wù)窗體卡死問題

    WinForm窗體調(diào)用WCF服務(wù)窗體卡死問題

    在Winform窗體中調(diào)用部署在其他服務(wù)器中的WCF服務(wù)時,由于調(diào)用服務(wù)需要一定時延,因此窗體在這段時間一直卡住不能進行其他操作
    2012-12-12
  • c#中SAPI使用總結(jié)——SpVoice的使用方法

    c#中SAPI使用總結(jié)——SpVoice的使用方法

    最近使用C#重做了點名系統(tǒng)(要用到TTS,讓計算機點名)使用了SAPI,在這里總結(jié)一下SpVoice的使用方法。
    2011-10-10
  • C#中的預(yù)處理器指令詳解

    C#中的預(yù)處理器指令詳解

    這篇文章主要介紹了C#中的預(yù)處理器指令詳解,本文講解了#define 和 #undef、#if、#elif、#else和#endif、#warning和#error、#region和#endregion、#line、#pragma等預(yù)處理器指令,需要的朋友可以參考下
    2015-01-01
  • C# WPF 建立無邊框(標題欄)的登錄窗口的示例

    C# WPF 建立無邊框(標題欄)的登錄窗口的示例

    這篇文章主要介紹了C# WPF 建立無邊框(標題欄)的登錄窗口的示例,幫助大家更好的理解和使用c#,感興趣的朋友可以了解下
    2020-12-12
  • C#常用數(shù)據(jù)結(jié)構(gòu)棧的詳細介紹

    C#常用數(shù)據(jù)結(jié)構(gòu)棧的詳細介紹

    在C#中,Stack<T> 是一個后進先出(LIFO,Last-In-First-Out)集合類,位于System.Collections.Generic 命名空間中,本文詳細介紹C#常用數(shù)據(jù)結(jié)構(gòu)棧,感興趣的朋友跟隨小編一起看看吧
    2024-09-09

最新評論

博爱县| 巴里| 库伦旗| 隆林| 长治县| 沁源县| 新昌县| 富民县| 大港区| 葵青区| 同德县| 长白| 邯郸市| 潍坊市| 阳新县| 张家港市| 万盛区| 淄博市| 华容县| 梓潼县| 招远市| 逊克县| 慈溪市| 乐东| 防城港市| 玉林市| 灌南县| 台北县| 梓潼县| 山阴县| 织金县| 阳谷县| 保德县| 遂宁市| 云南省| 鄂托克前旗| 新化县| 金秀| 交城县| 金华市| 泉州市|