基于HttpClient 类常见的API代码示例

本文介绍了基于C#的HttpClient类,用于HTTP请求和响应的基础操作。内容包括HttpClient的实例化、预热技巧,以及查询、创建、更新、删除记录的代码示例,特别强调了使用代码而非文字描述解决问题的方法。
摘要由CSDN通过智能技术生成

基于HttpClient 类常见的API代码示例

关于HttpClient类

  • 命名空间:System.Net.Http

  • 程序集:System.Net.Http.dll

  • 介绍:提供基本类,用于发送 HTTP 请求和接收来自通过 URI 确认的资源的 HTTP 响应。

  • 继承关系:Object --> HttpMessageInvoker --> HttpClient

  • 示例 使用 async Task Main() 入口点。 该功能需要 c # 7.1 或更高版本。

    // HttpClient is intended to be instantiated once per application, rather than per-use. See Remarks.
    static readonly HttpClient client = new HttpClient();
    
    static async Task Main()
    {
      // Call asynchronous network methods in a try/catch block to handle exceptions.
      try	
      {
         HttpResponseMessage response = await client.GetAsync("http://www.contoso.com/");
         response.EnsureSuccessStatusCode();
         string responseBody = await response.Content.ReadAsStringAsync();
         // Above three lines can be replaced with new helper method below
         // string responseBody = await client.GetStringAsync(uri);
    
         Console.WriteLine(responseBody);
      }
      catch(HttpRequestException e)
      {
         Console.WriteLine("\nException Caught!");	
         Console.WriteLine("Message :{0} ",e.Message);
      }
    }
    

    HttpClient实例构造函数参数设置

    static WebAPI(){
    	httpClient = SetHttpClient();
    	httpClient.Timeout = new TimeSpan(0, 2, 0);  // 2 minutes  
    	httpClient.DefaultRequestHeaders.Add("OData-MaxVersion", "4.0");
    	httpClient.DefaultRequestHeaders.Add("OData-Version", "4.0");
    	httpClient.DefaultRequestHeaders.Add("Accept", "application/json");
    	httpClient.DefaultRequestHeaders.Add("Prefer", "odata.include-annotations=OData.Community.Display.V1.FormattedValue");//,return=representation
    	httpClient.DefaultRequestHeaders.Connection.Add("keep-alive");
      
        //http预热
        httpClient.SendAsync(new HttpRequestMessage
        {
        	Method = new HttpMethod("HEAD"),
        	RequestUri &
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值