zoukankan      html  css  js  c++  java
  • Async Restsharp call

      
    
    public async Task<SparkGrid> GetSkysparkRecordsAsync(string evalExpression)
    {
    var pointsPostRequest = new RestRequest(_siteApiEndpoint + evalExpression, Method.GET);
    pointsPostRequest.AddParameter("text/plain", "", ParameterType.RequestBody);
    var response = await ExecuteAsync<RestResponse>(pointsPostRequest);
    
    if (response.StatusCode != HttpStatusCode.OK)
    {
    throw new Exception($"Request to Skyspark failed! Http Response details: {response}");
    }
    
    var records = JsonConvert.DeserializeObject<SparkGrid>(response.Content);
    
    return records;
    }
    
    
    private Task<IRestResponse> SendRequestToSkysparkAsync<T>(RestRequest request) where T : new()
    {
    var skySparkEndPoint = _skysparkBaseApiUrl;
    var restClient = new RestClient(skySparkEndPoint);
    var taskCompletionSource = new TaskCompletionSource<IRestResponse>();
    var basicAuth = new HttpBasicAuthenticator(_username, _password);
    basicAuth.Authenticate(restClient, request);
    restClient.ExecuteAsync<T>(request, (response) => taskCompletionSource.SetResult(response.Data));
    return taskCompletionSource.Task;
    }
    

      

  • 相关阅读:
    mysql InnoDB 索引小记
    Linux shell 脚本小记
    Java中Integer的源码学习
    nginx小记
    位运算小结
    Redis小结
    CSS中nth-child和nth-of-type的简单使用
    Linux awk小记
    mysql小记--基础知识
    让44.1版本的sketch打开更高版本的sketch文件
  • 原文地址:https://www.cnblogs.com/fudaming/p/6761841.html
Copyright © 2011-2022 走看看