SClient class
A powerful HTTP client supporting both http and dio backends.
Use SClient.instance for a singleton with default configuration, or create a new instance with custom ClientConfig.
Constructors
- SClient({ClientConfig config = const ClientConfig()})
- Creates a new SClient instance with optional configuration.
Properties
- config → ClientConfig
-
The configuration for this instance.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
cancel(
String cancelKey, {String? reason}) → void - Cancels a request by its cancel key.
-
cancelAll(
{String? reason}) → void - Cancels all pending requests.
-
checkReachability(
{required String url, required void onResult(bool isReachable), Duration? timeout, ClientType? clientType}) → Future< void> - Checks reachability with callback-based response handling.
-
close(
) → void - Closes the HTTP clients and cleans up resources.
-
delete(
{required String url, Map< String, dynamic> ? body, Map<String, String> ? headers, Duration? timeout, ClientType? clientType, String? cancelKey, OnSuccess? onSuccess, OnError? onError, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a DELETE request and returns the result as a tuple.
-
download(
{required String url, Map< String, String> ? headers, Duration? timeout, ClientType? clientType, OnProgress? onProgress, String? cancelKey, void onSuccess(List<int> bytes)?, OnError? onError}) → Future<(List< int> ?, ClientException?)> - Downloads a file from the specified URL.
-
downloadToFile(
{required String url, required String savePath, Map< String, String> ? headers, Duration? timeout, ClientType? clientType, OnProgress? onProgress, String? cancelKey, FileAccessMode? fileAccessMode, void onSuccess(String savedPath)?, OnError? onError}) → Future<(String?, ClientException?)> - Downloads a file from the specified URL and saves it to a file path.
-
get(
{required String url, Map< String, String> ? headers, Map<String, String> ? queryParameters, Duration? timeout, ClientType? clientType, String? cancelKey, OnSuccess? onSuccess, OnError? onError, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a GET request and returns the result as a tuple.
-
getJson<
T> ({required String url, required T fromJson(Map< String, dynamic> json), required OnSuccessTyped<T> onSuccess, required OnError onError, Map<String, String> ? headers, Map<String, String> ? queryParameters, Duration? timeout, ClientType? clientType, String? cancelKey, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a GET request with typed JSON response.
-
getJsonList<
T> ({required String url, required T fromJson(Map< String, dynamic> json), required OnSuccessTyped<List< onSuccess, required OnError onError, Map<T> >String, String> ? headers, Map<String, String> ? queryParameters, Duration? timeout, ClientType? clientType, String? cancelKey, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a GET request with typed JSON list response.
-
head(
{required String url, Map< String, String> ? headers, Duration? timeout, ClientType? clientType, String? cancelKey, OnSuccess? onSuccess, OnError? onError, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a HEAD request and returns the result as a tuple.
-
isReachable(
String url, {Duration? timeout, ClientType? clientType}) → Future< bool> - Checks if a URL is reachable.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
patch(
{required String url, required Map< String, dynamic> body, Map<String, String> ? headers, Duration? timeout, ClientType? clientType, String? cancelKey, OnSuccess? onSuccess, OnError? onError, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a PATCH request and returns the result as a tuple.
-
post(
{required String url, required Map< String, dynamic> body, Map<String, String> ? headers, Duration? timeout, ClientType? clientType, String? cancelKey, OnSuccess? onSuccess, OnError? onError, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a POST request and returns the result as a tuple.
-
postJson<
T> ({required String url, required Map< String, dynamic> body, required T fromJson(Map<String, dynamic> json), required OnSuccessTyped<T> onSuccess, required OnError onError, Map<String, String> ? headers, Duration? timeout, ClientType? clientType, String? cancelKey, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a POST request with typed JSON response.
-
put(
{required String url, required Map< String, dynamic> body, Map<String, String> ? headers, Duration? timeout, ClientType? clientType, String? cancelKey, OnSuccess? onSuccess, OnError? onError, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Performs a PUT request and returns the result as a tuple.
-
toString(
) → String -
A string representation of this object.
inherited
-
uploadFile(
{required String url, required String filePath, required String fileField, Map< String, String> ? fields, Map<String, String> ? headers, Duration? timeout, ClientType? clientType, OnProgress? onProgress, String? cancelKey, OnSuccess? onSuccess, OnError? onError, OnHttpError? onHttpError, Map<int, OnStatus> ? onStatus, Set<int> ? successCodes, Set<int> ? errorCodes}) → Future<ClientResult> - Uploads a file using multipart/form-data.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Properties
Static Methods
-
configure(
ClientConfig config) → void - Reconfigures the singleton instance.