sendGetRequest method

  1. @override
Future<Response> sendGetRequest(
  1. String url, {
  2. JsonMap? params,
  3. bool useBaseHeaders = false,
})
override

Send a GET request to YouTube Music.

Implementation

@override
Future<Response> sendGetRequest(
  String url, {
  JsonMap? params,
  bool useBaseHeaders = false,
}) async {
  final fullHeaders = JsonMap.from(
    useBaseHeaders ? initializeHeaders() : await headers,
  );
  fullHeaders['Cookie'] = _cookies;

  final response = await _session.get(
    url,
    queryParameters: params,
    options: Options(headers: fullHeaders, responseType: ResponseType.bytes),
  );

  final String body;
  if ((response.data! as List)[0] == 0x1F &&
      (response.data! as List)[1] == 0x8B) {
    final List<int> decompressed = GZipCodec().decode(
      response.data! as List<int>,
    );
    body = utf8.decode(decompressed);
  } else {
    body = utf8.decode(response.data! as List<int>);
  }
  response.data = body;

  return response;
}