FubarCoder.RestSharp.Portable.Core

This is the core RestSharp.Portable library which contains mostly interfaces to allow dependent libraries to use as few dependencies as possible. Supported Platforms: - .NET Standard 1.0 - .NET Framework 4 - Silverlight 5 - Portable Class Libraries (Profiles 259 and 328)


Keywords
PCL, RestSharp, core, portable
License
Other
Install
Install-Package FubarCoder.RestSharp.Portable.Core -Version 4.0.8

Documentation

Portable RestSharp

Build status

Join the chat at https://gitter.im/FubarDevelopment/restsharp.portable

This is some kind of a RestSharp port as PCL and for .NET Core.

License

This project is licensed using the BSD 2-Clause License

NuGet packages

Description Badge
Core library FubarCoder.RestSharp.Portable.Core
Request engine using HttpWebRequest FubarCoder.RestSharp.Portable.WebRequest
Request engine using HttpClient FubarCoder.RestSharp.Portable.HttpClient
OAuth 1.0(a) authentication support FubarCoder.RestSharp.Portable.OAuth1
OAuth 2.0 authentication support FubarCoder.RestSharp.Portable.OAuth2
Content encoding support (GZip/Deflate) FubarCoder.RestSharp.Portable.Encodings

Request engines

RestSharp.Portable can use either HttpWebRequest or HttpClient as request engine.

HttpWebRequest request engine

Advantage:

  • Mature

Disadvantage:

  • Not configurable

HttpClient request engine

Advantage:

  • Configurable (maybe better performance on iOS/Adroid through ModernHttpClient)

Disadvantage:

  • Behaves differently on different platforms

Changes

Supported platforms

  • .NET Core
  • .NET Framework 4
  • .NET for Windows Store apps
  • .NET Native
  • Windows Phone 8 and 8.1
  • Silverlight 5
  • Portable Class Libraries
  • Xamarin Android
  • Xamarin MonoTouch / iOS

Small example

The following is an example to get the ticker from the bitstamp.net website.

The result class

public class TickerResult
{
	public decimal Last { get; set; }
	public decimal High { get; set; }
	public decimal Low { get; set; }
	public decimal Volume { get; set; }
	public decimal Bid { get; set; }
	public decimal Ask { get; set; }
}

We use the class with:

using (var client = new RestClient(new Uri("https://www.bitstamp.net/api/")))
{
    var request = new RestRequest("ticker", Method.GET);
    var result = await client.Execute<TickerResult>(request);
}

Contributors

Community Support

The support for community projects can be found in my subreddit /r/FubarDev.

Professional Support

You can get professional support here: Fubar Development Junker