getStream method
get request in form of stream.
NOTE: Still in development.
A StreamBuilder Widget can be used to get this data. first it will return the cache data and then the response data.
Implementation
Stream getStream(
{required String endPointURL,
Map<String, dynamic>? queryParameters,
Map<String, dynamic>? header,
bool useCache = true}) async* {
if (useCache && _storage.hasData(endPointURL))
yield _storage.read(endPointURL);
Response response = await _dio.get(endPointURL,
options: Options(headers: header), queryParameters: queryParameters);
if (response.statusCode == 200) {
if (useCache) _storage.write(endPointURL, response.data);
yield response.data;
} else {
yield null;
}
}