RestSharp的简单用法

Posted zhangjd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RestSharp的简单用法相关的知识,希望对你有一定的参考价值。

最近做了一个项目需要调用外部的API,发现一个很好用的插件,分享一下。

以下RestSharp的描述来自网上摘抄。https://www.xcode.me/post/5748

描述:RestSharp 是一个基于 .NET 框架的 REST 客户端,RestSharp 是一个轻量的,不依赖任何第三方的组件或者类库的 HTTP 组件。RestSharp具有以下的优点:

1、支持.NET4.5.2+ 和 .NET Standard 2.0 平台
2、使用NuGet轻松安装开发包
3、自动 XML 和 JSON 反序列化
4、通过 ISerializer 和 IDeserializer 自定义序列化和反序列化为
5、模糊匹配元素名称 (例如:XML或JSON中的product_id将匹配名为ProductId的C#属性)
6、自动检测返回内容的类型
7、指出 GET, POST, PUT, PATCH, HEAD, OPTIONS, DELETE 和 COPY 请求,支持其它非标准 HTTP 方法
8、OAuth 1.0、OAuth 2.0、Basic、NTLM 和基于参数的身份认证
9、通过 IAuthenticator 接口自定义身份验证方案
10、支持异步操作

官网地址:http://restsharp.org/

github地址:https://github.com/restsharp/RestSharp

一、简单的Api调用

SignModel signModel = new SignModel();
signModel.FileBase64 = fileBase64;
signModel.Index = 1;
var restclient = new RestClient("http://192.168.0.163:81");
var request = new RestRequest($"/api/Sign", Method.POST);
request.AddObject(signModel);
var response = restclient.Execute(request);
var resout = JsonConvert.DeserializeObject<Resout>(response.Content);

二、获取文件

#region 从wps获取文件的fileBytes
if (string.IsNullOrEmpty(fileUrl))
{
  return new
  {
    code = ResultType.Error,
    message = "文件地址不能为空!",
   };
}
var client = new RestClient("http://ks3-cn-beijing.ksyun.com");
var request = new RestRequest(fileUrl.Substring(33), Method.GET);
var response = client.Get(request);
var fileBytes = response.RawBytes;
#endregion

 RestSharp是一个很强大的工具,我用到的功能比较简单,更多的功能可以去官网查看,官网的实例都很清楚。

 

以上是关于RestSharp的简单用法的主要内容,如果未能解决你的问题,请参考以下文章

RestSharp 简单的完整示例 [关闭]

如何将此 .NET RestSharp 代码转换为 Microsoft.Net.Http HttpClient 代码?

页面重定向时 HttpWebRequest 和 Restsharp 不返回响应

这些是 RestSharp 和 ServiceStack 的客户端代码之间的主要区别吗? [关闭]

使用 RestSharp 返回“状态代码:未找到”获取 PayPal 访问令牌

.NET Core - HttpClient 与 RestSharp [关闭]