fetchBase64File method

Future<String?> fetchBase64File({
  1. required String url,
  2. required String token,
})

Implementation

Future<String?> fetchBase64File({
  required String url,
  required String token,
}) async {
  try {
    if (url.isEmpty || token.isEmpty) {
      throw Exception("please provide url and token");
    }

    final response = await http.get(
      Uri.parse(url),
      headers: {
        'Authorization': token,
      },
    );

    if (response.statusCode != 200) {
      throw Exception("Failed to fetch file. Status: ${response.statusCode}");
    }

    Uint8List bytes = response.bodyBytes;
    String base64Data = base64Encode(bytes);
    return base64Data;
  } catch (e) {
    VideoSDKLog.createLog(
        message: "Error in fetchBase64File() \n ${e.toString()}",
        logLevel: "ERROR");
    log("Error in fetchBase64File() : $e");
  }
  return null;
}