сохранение изображения (формат URL) из api в локальной базе данных sqlite, но не знаю, как - PullRequest
0 голосов
/ 08 мая 2020

У меня есть api, у которого есть изображения в URL-адресе, я хочу сохранить это изображение в локальной базе данных sqlite для цели страницы корзины в моем приложении flutter, я сделал некоторый поиск в Google, который я нашел для преобразования изображения в базу 64, которая будет преобразовать изображение в строку, но это похоже на png, jpeg или этот формат, но у меня есть изображения из URL-адреса api. я не знаю, как это сделать, любая помощь будет принята с благодарностью

 "images": [
        "https://west-1.amazonaws.com/images/full/5bc9839886fc106413b9407f42ed776b9b7bd9.jpg",

    ],

У меня есть такие изображения

1 Ответ

0 голосов
/ 08 мая 2020

Добавьте http-пакет:

http: ^0.12.0+2

Импорт:

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

Загрузите изображение и кодируйте base64:

// Substitute your image URL
String uri = 'https://pub.dev/static/img/pub-dev-logo-2x.png?hash=umitaheu8hl7gd3mineshk2koqfngugi';

http.Request request = http.Request("GET", Uri.parse(uri));

http.StreamedResponse streamedResponse = await request.send();

http.Response response = await http.Response.fromStream(streamedResponse);

if(response.statusCode != 200) {
  throw Exception("Couldn't get data becuase of ${response.statusCode}");
}

String data = base64.encode(response.bodyBytes);
...