request method

Future<Object> request(
  1. String methodName, [
  2. Map<String, dynamic> body = const {}
])

Allows you to create requests to the VK Api.

Implementation

Future<Object> request(String methodName,
    [Map<String, dynamic> body = const {}]) async {
  final requestBody = {
    ...body,
    'v': _version,
    'lang': _language.index,
  };

  final headers = {'Authorization': 'Bearer $_token'};

  return HttpClient.httpPost(
    _baseUrl + methodName,
    body: requestBody,
    headers: headers,
  ).then((data) {
    final error = (data['error'] as Map?)?.cast<String, dynamic>();
    final response = data['response'] as Object?;

    if (error != null) return Future.error(ApiException(error));

    return response!;
  });
}