RestSharp.NetCore 中的 ExecuteAsyncPost 示例

Posted

技术标签:

【中文标题】RestSharp.NetCore 中的 ExecuteAsyncPost 示例【英文标题】:ExecuteAsyncPost Example in RestSharp.NetCore 【发布时间】:2017-03-19 02:26:19 【问题描述】:

我正在使用 RestSharp.NetCore 包,需要调用 ExecuteAsyncPost 方法。我正在努力理解回调参数。

    var client = new RestClient("url");
    request.AddParameter("application/json", "myobject",  ParameterType.RequestBody);
    client.ExecuteAsyncPost(request,**callback**, "POST");

回调的类型为Action<IRestResponse,RestRequestAsyncHandler>

有人可以发布一个小代码示例,说明如何使用回调参数并进行解释。

谢谢 -C

【问题讨论】:

【参考方案1】:

这对我使用 ExecuteAsync 进行 Get 调用很有用。它应该有望为您指明正确的方向。请注意,代码和信用转到https://www.learnhowtoprogram.com/net/apis-67c53b46-d070-4d2a-a264-cf23ee1d76d0/apis-with-mvc

public void ApiTest()
    
        var client = new RestClient("url");
        var request = new RestRequest(Method.GET);
        var response = new RestResponse();
        Task.Run(async () =>
        
            response = await GetResponseContentAsync(client, request) as RestResponse;
        ).Wait();
        var jsonResponse = JsonConvert.DeserializeObject<JObject>(response.Content);

    

public static Task<IRestResponse> GetResponseContentAsync(RestClient theClient, RestRequest theRequest)
    
        var tcs = new TaskCompletionSource<IRestResponse>();
        theClient.ExecuteAsync(theRequest, response => 
            tcs.SetResult(response);
        );
        return tcs.Task;
    

【讨论】:

【参考方案2】:

RestSharp v106 支持 .NET Standard 2.0,因此如果您的代码在 .NET Framework 下与 RestSharp 105 一起使用 - 它也可以与 .NET Core 2 一起使用。

RestSharp.NetCore 包不是来自 RestSharp 团队,我们不支持。它也没有更新,所有者没有回复消息,也没有发布包的源代码。

【讨论】:

以上是关于RestSharp.NetCore 中的 ExecuteAsyncPost 示例的主要内容,如果未能解决你的问题,请参考以下文章

PHP 中的 exec()、shell_exec、system() 和 passthru() 函数有啥不同? [复制]

exec...的docker中的EXEC

python中的exec和eval

PHP中的curl_exec

【exec】shell脚本中的 exec 命令

PHP 中的 shell_exec()