send method

Future<Map<String, dynamic>> send(
  1. String path, [
  2. Map<String, dynamic>? params
])

Implementation

Future<Map<String, dynamic>> send(
  String path, [
  Map<String, dynamic>? params,
]) async {
  params ??= <String, dynamic>{};
  params['key'] = key;

  final valueToString = (dynamic value) {
    if (value is List) return value.map((dynamic e) => '$e').join(',');

    return '$value';
  };

  final paramsString = params.entries.where((e) => e.value != null).map((e) => '${e.key}=${valueToString(e.value)}').join('&');

  final uri = '${url}/ghost/api/${version}/content${path}?$paramsString';

  final response = await http.get(Uri.parse(uri));

  if (response.statusCode != 200) throw Exception(response.body);

  return jsonDecode(response.body) as Map<String, dynamic>;
}