RestSharp

RestSharp是一个基于.NET的客户端,是一个轻量级的,不依赖于第三方组件或类库的Http组件。主要目的是通过

Http对远程资源进行同步或异步调用。

只要资源请求符合W3C HTTP标准,ReshSharp可以通过HTTP调用任何API。

对于.NET中的WebApi尤为适用。WebApi是Restful风格,遵循HTTP协议,其调用方法也和HTTP的基本方法对应(GET, POST, PUT, HEAD, OPTIONS, DELETE)。

RestSharp。可以将请求正文序列化为Json或XML并反序列化响应。与之前处理RestAPI的方法有如下区别:

HttpWebRequest:.NET最初用来处理HTTP请求的标准类,可以控制请求/响应流程的各个方面,另外也不会阻塞UI线程。但如此复杂的配置操作也带来了极大的操作难度,而且在业务上,他已经过时了,只用在内部框架中。

WebClient:这是一种更高级别的抽象,是一种HttpWebRequest的简化,而且他缺少基本的Header设置,虽然可以通过继承HeetWebRequest实现。使用WebClient比起HttpWebRequest更慢,但这种“低效率”换来的是对细节的隐藏简化和操作的便捷。

HttpClient:具有强大的功能,更多的是为异步请求,多用于异步编程。

RestSharp:是开源社区贡献的,同时兼备了HttpWebRequest和WebClient的优点,既有HttpWebRequest对细节的控制,又有WebClient简便的操作,强大而简化!

 RestSharp使用方式也很简单:

var url = "https://i.cnblogs.com/posts";
            var client = new RestClient(url);
            var request = new RestRequest("ControllerName/ActionName", Method.POST);
            request.AddParameter("name","linda");
            request.AddParameter("id","123");
            var response = client.Execute(request);
            Console.WriteLine(response.Content);

到此,一个请求/响应就完成了!!

posted @ 2020-11-26 17:17  lv99  阅读(2740)  评论(0编辑  收藏  举报