在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → RestSharp:.NET的简易REST和HTTP API客户端介绍

RestSharp:.NET的简易REST和HTTP API客户端介绍

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:2.32M
  • 下载次数:7
  • 浏览次数:65
  • 发布时间:2024-02-07
  • 实例类别:一般编程问题
  • 发 布 人:chenxiaolan
  • 文件格式:.zip
  • 所需积分:2
 相关标签:

实例介绍

【实例简介】
RestSharp是为.NET平台设计的一款简易REST和HTTP API客户端库。它实质上是对HttpClient的封装,并非一个独立的客户端库。

RestSharp的特点包括:
  • 支持任意类型的默认参数,不仅限于头部参数。
  • 能够向请求中添加各种类型的参数,如查询参数、URL片段、头部、Cookie或请求体。
  • 提供多种添加请求体的方式,包括JSON、XML和表单数据。
  • 内置JSON和XML的序列化与反序列化功能。
RestSharp已得到AWS的支持。

从v107版本开始,RestSharp转向使用HttpClient。同时,我们废弃了以下内容:
  • 不再使用SimpleJson,改为使用System.Text.Json.JsonSerializer。
  • 废弃IRestRequest和IRestResponse接口,改为使用具体的实现类。
  • 不再使用Http和IHttp这些仅作为封装的类。
现在,大部分客户端和一些请求选项已集成到RestClientOptions中。

【实例截图】
【核心代码】
文件清单
└── RestSharp-f3642c1bdc937f02c5a178305c1a437b96a39189
    ├── CONTRIBUTING.md
    ├── LICENSE.txt
    ├── README.md
    ├── RestSharp.sln
    ├── RestSharp.sln.DotSettings
    ├── RestSharp.snk
    ├── SECURITY.md
    ├── benchmarks
    │   └── RestSharp.Benchmarks
    │       ├── Program.cs
    │       ├── Requests
    │       │   ├── AddObjectToRequestParametersBenchmarks.cs
    │       │   └── Data.cs
    │       ├── RestSharp.Benchmarks.csproj
    │       └── Serializers
    │           ├── JsonNetSerializeBenchmarks.cs
    │           └── TestClass.cs
    ├── docs
    │   ├── CI-CD_DOCUMENTATION
    │   │   ├── CI-CD_DOCUMENTATION.md
    │   │   ├── CodeQL_alert_page.png
    │   │   ├── CodeQL_results.png
    │   │   ├── Dependabot_PRs.png
    │   │   ├── Dependabot_alert_page.png
    │   │   ├── Dependabot_alerts_page.png
    │   │   ├── Dependabot_dependency_graph.png
    │   │   ├── Dependabot_log_page.png
    │   │   └── Dependabot_tab.png
    │   ├── README.md
    │   ├── authenticators.md
    │   ├── error-handling.md
    │   ├── intro.md
    │   ├── serialization.md
    │   ├── support
    │   │   └── README.md
    │   ├── usage.md
    │   └── v107
    │       ├── README.md
    │       └── interfaces.md
    ├── gen
    │   └── SourceGenerator
    │       ├── ImmutableGenerator.cs
    │       └── SourceGenerator.csproj
    ├── global.json
    ├── package.json
    ├── props
    │   └── Common.props
    ├── restsharp.png
    ├── src
    │   ├── Directory.Build.props
    │   ├── RestSharp
    │   │   ├── AsyncHelpers.cs
    │   │   ├── Authenticators
    │   │   │   ├── AuthenticatorBase.cs
    │   │   │   ├── HttpBasicAuthenticator.cs
    │   │   │   ├── IAuthenticator.cs
    │   │   │   ├── JwtAuthenticator.cs
    │   │   │   ├── OAuth
    │   │   │   │   ├── Enums.cs
    │   │   │   │   ├── Extensions
    │   │   │   │   │   ├── OAuthExtensions.cs
    │   │   │   │   │   ├── StringExtensions.cs
    │   │   │   │   │   └── TimeExtensions.cs
    │   │   │   │   ├── OAuth1Authenticator.cs
    │   │   │   │   ├── OAuthTools.cs
    │   │   │   │   ├── OAuthWorkflow.cs
    │   │   │   │   ├── WebPair.cs
    │   │   │   │   └── WebPairCollection.cs
    │   │   │   └── OAuth2
    │   │   │       ├── OAuth2AuthorizationRequestHeaderAuthenticator.cs
    │   │   │       └── OAuth2UriQueryParameterAuthenticator.cs
    │   │   ├── BuildUriExtensions.cs
    │   │   ├── ContentType.cs
    │   │   ├── Ensure.cs
    │   │   ├── Enum.cs
    │   │   ├── Extensions
    │   │   │   ├── CollectionExtensions.cs
    │   │   │   ├── CookieContainerExtensions.cs
    │   │   │   ├── GenerateImmutableAttribute.cs
    │   │   │   ├── HttpHeadersExtensions.cs
    │   │   │   ├── HttpResponseExtensions.cs
    │   │   │   ├── ReflectionExtensions.cs
    │   │   │   ├── StreamExtensions.cs
    │   │   │   ├── StringExtensions.cs
    │   │   │   └── WithExtensions.cs
    │   │   ├── IRestClient.cs
    │   │   ├── Interceptors
    │   │   │   └── Interceptor.cs
    │   │   ├── KnownHeaders.cs
    │   │   ├── Options
    │   │   │   └── RestClientOptions.cs
    │   │   ├── Parameters
    │   │   │   ├── BodyParameter.cs
    │   │   │   ├── DefaultParameters.cs
    │   │   │   ├── FileParameter.cs
    │   │   │   ├── GetOrPostParameter.cs
    │   │   │   ├── HeaderParameter.cs
    │   │   │   ├── ObjectParser.cs
    │   │   │   ├── Parameter.cs
    │   │   │   ├── ParametersCollection.cs
    │   │   │   ├── ParametersCollectionExtensions.cs
    │   │   │   ├── QueryParameter.cs
    │   │   │   ├── RequestParameters.cs
    │   │   │   └── UrlSegmentParameter.cs
    │   │   ├── Properties
    │   │   │   ├── AssemblyInfo.cs
    │   │   │   └── IsExternalInit.cs
    │   │   ├── Request
    │   │   │   ├── BodyExtensions.cs
    │   │   │   ├── HttpRequestMessageExtensions.cs
    │   │   │   ├── PropertyCache.Populator.RequestProperty.cs
    │   │   │   ├── PropertyCache.Populator.cs
    │   │   │   ├── PropertyCache.cs
    │   │   │   ├── RequestContent.cs
    │   │   │   ├── RequestHeaders.cs
    │   │   │   ├── RestRequest.cs
    │   │   │   ├── RestRequestExtensions.cs
    │   │   │   ├── RestXmlRequest.cs
    │   │   │   └── UriExtensions.cs
    │   │   ├── Response
    │   │   │   ├── ResponseThrowExtension.cs
    │   │   │   ├── RestResponse.cs
    │   │   │   └── RestResponseBase.cs
    │   │   ├── RestClient.Async.cs
    │   │   ├── RestClient.Extensions.Delete.cs
    │   │   ├── RestClient.Extensions.Get.cs
    │   │   ├── RestClient.Extensions.Head.cs
    │   │   ├── RestClient.Extensions.Options.cs
    │   │   ├── RestClient.Extensions.Params.cs
    │   │   ├── RestClient.Extensions.Patch.cs
    │   │   ├── RestClient.Extensions.Post.cs
    │   │   ├── RestClient.Extensions.Put.cs
    │   │   ├── RestClient.Extensions.cs
    │   │   ├── RestClient.cs
    │   │   ├── RestSharp.csproj
    │   │   ├── RestSharp.csproj.DotSettings
    │   │   ├── Serializers
    │   │   │   ├── DeseralizationException.cs
    │   │   │   ├── IDeserializer.cs
    │   │   │   ├── IRestSerializer.cs
    │   │   │   ├── ISerializer.cs
    │   │   │   ├── IWithDateFormat.cs
    │   │   │   ├── IWithRootElement.cs
    │   │   │   ├── Json
    │   │   │   │   ├── RestClientExtensions.cs
    │   │   │   │   └── SystemTextJsonSerializer.cs
    │   │   │   ├── RestSerializers.cs
    │   │   │   ├── SerializerConfig.cs
    │   │   │   ├── SerializerRecord.cs
    │   │   │   └── Xml
    │   │   │       ├── DotNetXmlDeserializer.cs
    │   │   │       ├── DotNetXmlSerializer.cs
    │   │   │       ├── DotNetXmlSerializerClientExtensions.cs
    │   │   │       ├── IXmlDeserializer.cs
    │   │   │       ├── IXmlSerializer.cs
    │   │   │       └── XmlRestSerializer.cs
    │   │   └── SimpleClientFactory.cs
    │   ├── RestSharp.Serializers.CsvHelper
    │   │   ├── CsvHelperSerializer.cs
    │   │   ├── RestClientExtensions.cs
    │   │   └── RestSharp.Serializers.CsvHelper.csproj
    │   ├── RestSharp.Serializers.NewtonsoftJson
    │   │   ├── JsonNetSerializer.cs
    │   │   ├── RestClientExtensions.cs
    │   │   ├── RestSharp.Serializers.NewtonsoftJson.csproj
    │   │   └── WriterBuffer.cs
    │   └── RestSharp.Serializers.Xml
    │       ├── DeserializeAsAttribute.cs
    │       ├── RestSharp.Serializers.Xml.csproj
    │       ├── SerializeAsAttribute.cs
    │       ├── XmlAttributeDeserializer.cs
    │       ├── XmlDeserializer.cs
    │       ├── XmlExtensions.cs
    │       ├── XmlSerializer.cs
    │       └── XmlSerializerClientExtensions.cs
    ├── test
    │   ├── Directory.Build.props
    │   ├── RestSharp.InteractiveTests
    │   │   ├── AuthenticationTests.cs
    │   │   ├── Program.cs
    │   │   ├── RestSharp.InteractiveTests.csproj
    │   │   └── TwitterClient.cs
    │   ├── RestSharp.Tests
    │   │   ├── AddRangeTests.cs
    │   │   ├── AuthenticatorTests.cs
    │   │   ├── HostHeaderTests.cs
    │   │   ├── HttpBasicAuthenticatorTests.cs
    │   │   ├── JwtAuthTests.cs
    │   │   ├── MultipartFormTests.cs
    │   │   ├── OAuth1AuthenticatorTests.cs
    │   │   ├── OAuthTests.cs
    │   │   ├── ObjectParameterTests.ArrayData.cs
    │   │   ├── ObjectParameterTests.CsvData.cs
    │   │   ├── ObjectParameterTests.FormattedData.cs
    │   │   ├── ObjectParameterTests.NamedData.cs
    │   │   ├── ObjectParameterTests.cs
    │   │   ├── ObjectParserTests.cs
    │   │   ├── OptionsTests.cs
    │   │   ├── ParametersTests.cs
    │   │   ├── RequestHeaderTests.cs
    │   │   ├── RestClientTests.cs
    │   │   ├── RestContentTests.cs
    │   │   ├── RestRequestParametersTests.cs
    │   │   ├── RestRequestTests.cs
    │   │   ├── RestSharp.Tests.csproj
    │   │   ├── SampleData
    │   │   │   ├── 4sq.json
    │   │   │   ├── GenericWithList.json
    │   │   │   ├── bearertoken.json
    │   │   │   ├── datetimes.json
    │   │   │   ├── iso8601datetimes.json
    │   │   │   ├── jsonarray.json
    │   │   │   ├── jsondictionary.json
    │   │   │   ├── jsondictionary_KeysType.json
    │   │   │   ├── jsondictionary_null.json
    │   │   │   ├── jsonenums.json
    │   │   │   ├── jsonenumtypes.json
    │   │   │   ├── jsonlists.json
    │   │   │   ├── newdatetimes.json
    │   │   │   ├── objectproperty.json
    │   │   │   ├── person.json
    │   │   │   ├── sojson.json
    │   │   │   ├── timespans.json
    │   │   │   └── underscore_prefix.json
    │   │   ├── StringExtensionsTests.cs
    │   │   └── UrlBuilderTests.cs
    │   ├── RestSharp.Tests.Integrated
    │   │   ├── Assets
    │   │   │   ├── Koala.jpg
    │   │   │   ├── Koala帣剶.jpg
    │   │   │   ├── TestFile.txt
    │   │   │   └── Test啈.txt
    │   │   ├── Authentication
    │   │   │   ├── AuthenticationTests.cs
    │   │   │   └── OAuth2Tests.cs
    │   │   ├── CompressionTests.cs
    │   │   ├── CookieTests.cs
    │   │   ├── DefaultParameterTests.cs
    │   │   ├── DownloadFileTests.cs
    │   │   ├── Fixtures
    │   │   │   ├── CaptureFixture.cs
    │   │   │   ├── OutputLogger.cs
    │   │   │   └── RequestBodyFixture.cs
    │   │   ├── HttpClientTests.cs
    │   │   ├── HttpHeadersTests.cs
    │   │   ├── Interceptor
    │   │   │   └── InterceptorTests.cs
    │   │   ├── JsonBodyTests.cs
    │   │   ├── MultipartFormDataTests.cs
    │   │   ├── NonProtocolExceptionHandlingTests.cs
    │   │   ├── OAuth1Tests.cs
    │   │   ├── PostTests.cs
    │   │   ├── ProxyTests.cs
    │   │   ├── PutTests.cs
    │   │   ├── RedirectTests.cs
    │   │   ├── RequestBodyTests.cs
    │   │   ├── RequestFailureTests.cs
    │   │   ├── RequestHeadTests.cs
    │   │   ├── RequestTests.cs
    │   │   ├── ResourceStringParametersTests.cs
    │   │   ├── RestSharp.Tests.Integrated.csproj
    │   │   ├── RootElementTests.cs
    │   │   ├── Server
    │   │   │   ├── Handlers
    │   │   │   │   ├── CookieHandlers.cs
    │   │   │   │   ├── FileHandlers.cs
    │   │   │   │   ├── FormRequest.cs
    │   │   │   │   ├── HeaderHandlers.cs
    │   │   │   │   └── RequestHandlers.cs
    │   │   │   ├── Models.cs
    │   │   │   ├── TestServer.cs
    │   │   │   └── TestServerFixture.cs
    │   │   ├── StatusCodeTests.cs
    │   │   ├── StructuredSyntaxSuffixTests.cs
    │   │   ├── UploadFileTests.cs
    │   │   └── xunit.runner.json
    │   ├── RestSharp.Tests.Serializers.Csv
    │   │   ├── CsvHelperTests.cs
    │   │   ├── RestSharp.Tests.Serializers.Csv.csproj
    │   │   └── TestObject.cs
    │   ├── RestSharp.Tests.Serializers.Json
    │   │   ├── NewtonsoftJson
    │   │   │   ├── IntegratedSimpleTests.cs
    │   │   │   ├── IntegratedTests.cs
    │   │   │   └── SerializationTests.cs
    │   │   ├── RestSharp.Tests.Serializers.Json.csproj
    │   │   ├── SampleData.cs
    │   │   └── SystemTextJson
    │   │       └── SystemTextJsonTests.cs
    │   ├── RestSharp.Tests.Serializers.Xml
    │   │   ├── NamespacedXmlTests.cs
    │   │   ├── RestSharp.Tests.Serializers.Xml.csproj
    │   │   ├── SampleClasses
    │   │   │   ├── BearerToken.cs
    │   │   │   ├── BooleanTest.cs
    │   │   │   ├── ColorWithValue.cs
    │   │   │   ├── DeserializeAsTest
    │   │   │   │   └── misc.cs
    │   │   │   ├── EmployeeTracker.cs
    │   │   │   ├── EnumTest.cs
    │   │   │   ├── Goodreads.cs
    │   │   │   ├── GoogleWeatherWithAttributes.cs
    │   │   │   ├── HeaderAndRows.cs
    │   │   │   ├── JsonLists.cs
    │   │   │   ├── Lastfm.cs
    │   │   │   ├── ListSamples.cs
    │   │   │   ├── Oddball.cs
    │   │   │   ├── SOUser.cs
    │   │   │   ├── Struct.cs
    │   │   │   ├── TwilioCallList.cs
    │   │   │   ├── eventful.cs
    │   │   │   ├── foursq.cs
    │   │   │   ├── googleweather.cs
    │   │   │   ├── misc.cs
    │   │   │   ├── nullables.cs
    │   │   │   └── twitter.cs
    │   │   ├── SampleData
    │   │   │   ├── Goodreads.xml
    │   │   │   ├── GoodreadsFormatError.xml
    │   │   │   ├── GoogleWeather.xml
    │   │   │   ├── InlineListSample.xml
    │   │   │   ├── Lastfm.xml
    │   │   │   ├── ListWithAttributes.xml
    │   │   │   ├── NestedListSample.xml
    │   │   │   ├── boolean_from_number.xml
    │   │   │   ├── boolean_from_string.xml
    │   │   │   ├── deserialize_as_list.xml
    │   │   │   ├── directlists.xml
    │   │   │   ├── eventful.xml
    │   │   │   ├── header_and_rows.xml
    │   │   │   ├── restsharp.nuspec
    │   │   │   └── xmllists.xml
    │   │   ├── XmlAttributeDeserializerTests.cs
    │   │   ├── XmlDeserializerTests.cs
    │   │   └── XmlSerializerTests.cs
    │   └── RestSharp.Tests.Shared
    │       ├── Extensions
    │       │   ├── StreamExtensions.cs
    │       │   └── UriExtensions.cs
    │       ├── Fixtures
    │       │   ├── Handlers.cs
    │       │   ├── HttpServerFixture.cs
    │       │   ├── RequestBodyCapturer.cs
    │       │   ├── SimpleServer.cs
    │       │   ├── TestHttpServer.cs
    │       │   ├── TestHttpServerExtensions.cs
    │       │   ├── TestRequestHandler.cs
    │       │   └── WebServer.cs
    │       └── RestSharp.Tests.Shared.csproj
    └── yarn.lock

53 directories, 298 files

标签:

实例下载地址

RestSharp:.NET的简易REST和HTTP API客户端介绍

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警