Solution.Framework.Http
8.0.0
dotnet add package Solution.Framework.Http --version 8.0.0
NuGet\Install-Package Solution.Framework.Http -Version 8.0.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="Solution.Framework.Http" Version="8.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Solution.Framework.Http --version 8.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Solution.Framework.Http, 8.0.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 Solution.Framework.Http as a Cake Addin #addin nuget:?package=Solution.Framework.Http&version=8.0.0 // Install Solution.Framework.Http as a Cake Tool #tool nuget:?package=Solution.Framework.Http&version=8.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Http
Http Framework
public class Headers
{
public string Key { get; set; }
public string Value { get; set; }
public HeaderTypeEnum HeaderType { get; set; } = HeaderTypeEnum.Header;
}
public class ResponseBase
{
public bool Success => Errors == null || !Errors.Any();
public int StatusCode { get; set; }
public IEnumerable<string>? Errors { get; set; }
public string? Data { get; set; }
}
public enum HeaderTypeEnum
{
Header = 0,
BearerToken = 1,
BasicAuth = 2
}
ResponseBase Get (string url, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
Task<ResponseBase>GetAsync (string url, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
ResponseBase Post (string url, object body, NullValueHandling nullValue = NullValueHandling.Ignore, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
Task<ResponseBase>PostAsync (string url, object body, NullValueHandling nullValue = NullValueHandling.Ignore, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
ResponseBase Put (string url, object body, NullValueHandling nullValue = NullValueHandling.Ignore, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
Task<ResponseBase>PutAsync (string url, object body, NullValueHandling nullValue = NullValueHandling.Ignore, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
ResponseBase Patch (string url, object body, NullValueHandling nullValue = NullValueHandling.Ignore, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
Task<ResponseBase>PatchAsync (string url, object body, NullValueHandling nullValue = NullValueHandling.Ignore, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
ResponseBase Delete (string url, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
Task<ResponseBase>DeleteAsync (string url, Dictionary<string, string?>? parameters = null, List<Headers>? headers = null, int timeOutSeconds = 300, [CallerFilePath] string contextName = "", [CallerMemberName] string eventName = "")
This Framework uses the features of Solution.Framework.Logger and Solution.Framework.Notifier.
All methods only return notifications and not exceptions.
Sample Code
Get
using Solution.Framework.Http;
using Solution.Framework.Logger.Enums;
using Microsoft.Extensions.Configuration;
class Program
{
static void Main(string[] args)
{
IConfiguration configuration = new ConfigurationBuilder()
.AddJsonFile(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "..\\..\\..\\") + "\\appsettings.json")
.Build();
HttpClass.Configuration = configuration;
HttpClass.LogType = LogTypeEnum.Application;
HttpClass.UserNameLog = Environment.UserName;
ResponseBase result = HttpClass.Get("https://uol.com.br");
Console.WriteLine($"Result: {result}");
}
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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.
-
net8.0
- Microsoft.Extensions.Configuration (>= 8.0.0)
- Solution.Framework.Json (>= 8.0.0)
- Solution.Framework.Logger (>= 8.0.0)
- Solution.Framework.Notifier (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.