亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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)文章

  • Unity屏幕雪花另類實現(xiàn)方式示例

    Unity屏幕雪花另類實現(xiàn)方式示例

    這篇文章主要介紹了Unity屏幕雪花另類實現(xiàn)方式示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • C#?將數(shù)據(jù)庫SqlServer數(shù)據(jù)綁定到類中的過程詳解

    C#?將數(shù)據(jù)庫SqlServer數(shù)據(jù)綁定到類中的過程詳解

    本文講述的是讀取數(shù)據(jù)庫中數(shù)據(jù)的常用做法,即將數(shù)據(jù)庫中的數(shù)據(jù)綁定到創(chuàng)建的類中,再將類綁定到DataGridView的數(shù)據(jù)源中的做法,對C#將SqlServer數(shù)據(jù)綁定到類中感興趣的朋友一起看看吧
    2022-06-06
  • C#利用Task實現(xiàn)任務(wù)超時多任務(wù)一起執(zhí)行的方法

    C#利用Task實現(xiàn)任務(wù)超時多任務(wù)一起執(zhí)行的方法

    這篇文章主要給大家介紹了關(guān)于C#利用Task實現(xiàn)任務(wù)超時,多任務(wù)一起執(zhí)行的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友下面來一起看看吧。
    2017-12-12
  • C#編寫的windows計算器的實例代碼

    C#編寫的windows計算器的實例代碼

    這篇文章介紹了C#編寫windows計算器的代碼,有需要的朋友可以參考一下
    2013-07-07
  • C#實現(xiàn)給圖片添加文字水印的示例代碼

    C#實現(xiàn)給圖片添加文字水印的示例代碼

    在某些應(yīng)用項目中,查看電子圖片信息是經(jīng)常使用到的功能,此時我們就需要給顯示在瀏覽器中的圖片添加文字水印版權(quán)或提示信息,下面我們就來看看如何使用C#實現(xiàn)給圖片添加文字水印吧
    2024-04-04
  • UnityShader3實現(xiàn)彩光效果

    UnityShader3實現(xiàn)彩光效果

    這篇文章主要為大家詳細介紹了UnityShader3實現(xiàn)彩光效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • WPF?Trigger改變屬性無效問題排查示例詳解

    WPF?Trigger改變屬性無效問題排查示例詳解

    這篇文章主要為大家介紹了WPF?Trigger改變屬性無效問題排查示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • 基于C#編寫一個遠程桌面應(yīng)用

    基于C#編寫一個遠程桌面應(yīng)用

    封閉環(huán)境無法拷貝外來的遠程桌面軟件,所以這篇文章小編就來帶大家用C#編寫一個簡單的遠程桌面應(yīng)用,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-10-10
  • Unity多語言轉(zhuǎn)換工具的實現(xiàn)

    Unity多語言轉(zhuǎn)換工具的實現(xiàn)

    這篇文章主要為大家詳細介紹了Unity多語言轉(zhuǎn)換工具的實現(xiàn),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • 10分鐘學(xué)會Visual Studio將自己創(chuàng)建的類庫打包到NuGet進行引用(net,net core,C#)

    10分鐘學(xué)會Visual Studio將自己創(chuàng)建的類庫打包到NuGet進行引用(net,net core,C#)

    這篇文章主要介紹了10分鐘學(xué)會Visual Studio將自己創(chuàng)建的類庫打包到NuGet進行引用(net,net core,C#),本文給大家介紹的非常詳細對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09

最新評論