WebRequest.request constructor
WebRequest.request(})
from Request path
Implementation
factory WebRequest.request(
String route, {
Map<String, String>? data,
Map<String, String>? queryParameters,
Object? arguments,
}) {
// build uri
List<String> paths = [];
route.split('/').forEach((path) {
if (path.isNotEmpty) {
if (data == null || data.length == 0) {
paths.add(path);
} else {
final match = RegExp(r'^\{(.+)\}$').firstMatch(path);
if (match != null && match.groupCount > 0) {
final name = match.group(1);
assert(data[name] != null);
paths.add(data[name]!);
} else {
paths.add(path);
}
}
}
});
final uri = Uri(
path: '/' + paths.join('/'),
queryParameters: queryParameters,
);
return WebRequest._(
settings: RouteSettings(
name: uri.toString(),
arguments: arguments,
),
route: route,
data: data,
);
}