Imato.Api.Request
1.1.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Imato.Api.Request --version 1.1.0
NuGet\Install-Package Imato.Api.Request -Version 1.1.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Imato.Api.Request" Version="1.1.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Imato.Api.Request --version 1.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Imato.Api.Request, 1.1.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Imato.Api.Request as a Cake Addin #addin nuget:?package=Imato.Api.Request&version=1.1.0 // Install Imato.Api.Request as a Cake Tool #tool nuget:?package=Imato.Api.Request&version=1.1.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Imato.Api.Request
Generic helpers for REST API
Using
Try
using Imato.Api.Request;
// Execution options
var options = new TryOptions
{
RetryCount = 3,
Delay = 20,
Timeout = 2000
};
// Function to execute
var testFunc1 = (int id) =>
{
if (id % 2 == 0)
{
return Task.FromResult(id);
}
throw new ArgumentException(nameof(id));
};
// Default behavior
var result = await Try
.Function(() => testFunc1(2))
.GetResult();
// Add exception handler
result = await Try
.Function(() => testFunc1(2))
.OnError((ex) => Console.WriteLine(ex.Message))
.GetResult();
// With retry and over options
result = await Try
.Function(() => testFunc1(2))
.Setup(options)
.OnError((ex) => Console.WriteLine(ex.Message))
.GetResult();
// Without result
var errorCount = 0;
await Try
.Function(() => testFunc2(1))
.Function(() => testFunc2(2))
.Function(() => testFunc2(3))
.OnError((ex) => errorCount++)
.OnError((ex) => Console.WriteLine(ex.Message))
.Setup(options)
.Execute();
API
using Imato.Api.Request;
// Create service
var service = new ApiService(new ApiOptions
{
ApiUrl = "https://www.boredapi.com/api",
TryOptions = new TryOptions
{
Timeout = 3000,
RetryCount = 3,
Delay = 500
}
});
// Get
var getResult = await service.Get<NewActivity>(path: "/activity", queryParams: new { type = "education" });
// POST
var postResult = await service.Post<NewActivity>(path: "/activity",
queryParams: new { key = "100" },
data: new NewActivity
{
Activity = "Test"
});
// Or view result messages
var postMessage = await service.Post<ApiResult>(path: "/activity",
queryParams: new { key = "100" },
data: new NewActivity
{
Activity = "Test"
});
// Or without result
await service.Post(path: "/activity",
queryParams: new { key = "100" },
data: new NewActivity
{
Activity = "Test"
});
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net6.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Imato.Api.Request:
Package | Downloads |
---|---|
Enot.SmartMonitoring.Druid
DRUID data provider |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
3.4.2 | 78 | 10/25/2024 |
3.4.1 | 83 | 10/15/2024 |
3.3.1 | 94 | 8/29/2024 |
3.3.0 | 129 | 4/4/2024 |
3.2.8 | 194 | 12/26/2023 |
3.2.7 | 125 | 12/20/2023 |
3.2.0 | 174 | 11/23/2023 |
3.1.0 | 243 | 6/21/2023 |
3.0.1 | 261 | 3/30/2023 |
3.0.0 | 353 | 1/12/2023 |
2.1.0 | 353 | 11/25/2022 |
2.0.0 | 349 | 11/23/2022 |
1.2.0 | 432 | 9/21/2022 |
1.1.3 | 419 | 8/19/2022 |
1.1.2 | 431 | 8/17/2022 |
1.1.1 | 424 | 8/10/2022 |
1.1.0 | 424 | 8/8/2022 |
1.0.6 | 469 | 5/24/2022 |
1.0.5 | 433 | 4/20/2022 |
1.0.4 | 454 | 4/19/2022 |
1.0.3 | 447 | 4/13/2022 |
1.0.2 | 431 | 4/13/2022 |
1.0.1 | 448 | 4/13/2022 |
1.0.0 | 441 | 4/12/2022 |
Ready to use