Невозможно загрузить изображения из приложений flutter во фреймворк для отдыха Djnago

Для моего проекта в колледже я создал приложение, в котором я могу обновлять любую текстовую информацию в Django rest API, но я не могу отправить или загрузить любой вид медиафайла из приложения Flutter в Django. Если кто-то сотрудничал с флаттером и фреймворком Django rest, пожалуйста, помогите мне с соответствующими ресурсами.

Я не нашел никаких ресурсов, чтобы попытаться загрузить медиафайлы, такие как фотографии, pdf, видео и т.д.

Отправка изображения в API с помощью POST-запроса может быть разной, зависит от api, В данном примере изображение отправляется с параметром body, как сказано в документации этого API:

import 'package:http/http.dart' as http;

class Api {
  final _url = "https://freeimage.host/api/1/upload";
  final _apiKey = "6d207e02198a847aa98d0a2a901485a5";

  Future<void> uploadImage() async {
    try {
      final image = await ImagePicker().pickImage(source: ImageSource.gallery);

      if (image == null) throw "No image was picked";

      String base64Image = base64Encode(await image.readAsBytes());

      Map<String, dynamic> body = {
        'key': _apiKey,
        'action': 'upload',
        'source': base64Image,
        'format': 'json',
      };

      final response = await http.post(Uri.parse(_url), body: body);

      if (response.statusCode == 200) {
        final result = json.decode(response.body);
        print('Result: $result');
      } else {
        print('Error: ${response.statusCode}, ${response.reasonPhrase}');
      }
    } catch (e) {
      rethrow;
    }
  }
}
Вернуться на верх