cURL в Dart

Вставьте команду curl и получите код Dart, выполняющий тот же запрос через package:http.

cURL в Dart разбирает команду в браузере: учётные данные не покидают ваше устройство.

Преобразовать в Swift

Об инструменте cURL в Dart

Документация бэкенда даёт команду curl, а приложению на Flutter нужен Dart. Конвертер наводит мост: он разбирает флаги curl так же, как это делает сам curl, и выдаёт код на package:http — том самом пакете, от которого уже зависит почти любой проект на Dart или Flutter. Заголовки собираются в типизированную карту, тело JSON превращается в карту Dart и кодируется через jsonEncode, а базовая аутентификация собирается заново через base64Encode. Глаголы без сокращённых методов уходят в http.Request.

Возможности

Как использовать cURL в Dart

  1. Вставьте команду curl из документации к вашему API
  2. Прочитайте сгенерированный Dart справа
  3. Проверьте предупреждения о флагах, которые не удалось перенести
  4. Скопируйте код или скачайте его как .dart

Пример

Ввод

curl -X PUT https://api.example.com/users/1 -H 'Authorization: Bearer TOKEN' -d '{"role":"admin"}'

Результат

final response = await http.put(url, headers: headers, body: body);

Глагол берётся из -X, а тело JSON собирается картой Dart перед кодированием.

Частые ошибки и устранение неполадок

Часто задаваемые вопросы

Будет ли сгенерированный код работать во Flutter?
Да. package:http ведёт себя одинаково во Flutter и в чистом Dart, поэтому код запроса можно вставить в сервисный класс как есть.
Что выбрать: package:http или Dio?
package:http — более лёгкий официальный вариант, покрывающий почти любые запросы. Dio добавляет перехватчики, отмену и удобство multipart.
Как преобразуется тело JSON?
Оно разбирается и записывается литералом карты Dart, а затем кодируется через jsonEncode. Вложенные объекты и массивы остаются читаемыми.
А если у метода нет помощника вроде http.get?
Сгенерированный код собирает http.Request с глаголом-строкой и отправляет через send(), что покрывает PURGE, LINK и любой другой метод.
Загружается ли команда curl для преобразования?
Нет. Разбор и генерация кода происходят в вашем браузере, поэтому токены и ключи API остаются на устройстве.

Связанные инструменты

Все инструменты ArrayKit