Cross platform web client framework for calling ASP.NET Core RESTful Web Apis and gRPC services
The libary provides low level, bootstrapped base classes to simplify the building of client libraries for use with ASP.NET Core Web Apis and now gRPC services too.
- Base web service client classes for RESTful Web APIs and gRPC service clients
- Core Web Client functionality
- Stores Url
- Can check for connectivity
- Stores Default Timeout
- Supports gRPC fpr Web
- Base service client classes for both RESTFul and Grpc services
- Handles RestClient and Grpc channel management functionality
- Helper methods for Get and Post method calls
- Simplifies calls to the services
- Base request and response classes
- Generic methods and extensions for calling RESTful Web APIs
- Secure request and response classes using a
SecurePayload
- Integrated encryption, with abiltiy provide override with custom implementations.
- Uses 256-bit AES encryption by default
With the move to v3 some of the classes have been renamed and moved into different packages, such as ServiceClientBase
which now exists in DSoft.Portable.WebClient.Rest
and is now named RestServiceClientBase
.
v3.0 only!
You know have to set an InitVector key of your own on EncryptionProviderFactory
before encrption and decryption will function.
v3.1 and Above
In v3.1 and above the InitVector key is passed explicilty to the IEncryptionProvider
implementation when returned by EncryptionProviderFactory.Build
. This allows for calls to multiple services using multiple IVs. Check out the test harness for an example.
- Version 4.1.0
- Updtated to the latest packages
- Version 4.0.0
- Added support for .NET 8.0
- Removed EF Core libraries
- Updated to last RestSharp
- Improved support for Dependency Injecting
GrpcClientOptions
- Added custom HttpHandler to
GrpcClientOptions
- Cleaned up
GrpcChannelManager
code and add support for the custom HttpHandler inGrpcClientOptions
- This works great for Testing you Grpc Services with WebApplicationFactory
- Updated
AesEncryptionProvider
to use Aes.Create - Added Unit Test sample