requestList<T> method
请求并逐项解析数组响应,避免通过泛型强转推断列表类型。
Implementation
Future<List<T>> requestList<T>(
String path, {
String? baseUrl,
HttpMethod method = HttpMethod.get,
Options? options,
dynamic data,
Map<String, dynamic>? query,
required T Function(dynamic json) fromJson,
bool showLoading = false,
CancelToken? cancelToken,
void Function(int, int)? onSendProgress,
void Function(int, int)? onReceiveProgress,
}) async {
final raw = await request<dynamic>(
path,
baseUrl: baseUrl,
method: method,
options: options,
data: data,
query: query,
showLoading: showLoading,
cancelToken: cancelToken,
onSendProgress: onSendProgress,
onReceiveProgress: onReceiveProgress,
);
if (raw is! List) {
throw const FormatException('Expected a JSON array response body');
}
return raw.map<T>(fromJson).toList(growable: false);
}