Пакет Flutter http не существует

обычно пакет должен быть импортирован так:

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

но теперь я получаю эту ошибку:

[dart] Цель URI не существует: "пакет: http/http.dart". [Uri_does_not_exist]

это как-то изменилось в новых обновлениях Flutter? если да, то как я могу выполнить запрос get сейчас?

Ответы

Ответ 1

Это понятный способ добавить http к флаттеру

  1. Добавьте это в ваш пакет pubspec.yaml:
dependencies:
  http: ^0.12.0 // latest one might change
  1. Установить его Вы можете установить пакеты из командной строки:

с пабом:

$ pub get

с флаттером:

$ flutter packages get

  1. Теперь импортируйте его в свой код Dart, вы можете использовать:

import 'package:http/http.dart';

Если вы сделали эти 3 шага, перезапустите ваш редактор кода

Ответ 2

Вы добавили его в pubspec?

dependencies:
  flutter:
    sdk: flutter

  http: 0.12.0

Ответ 3

В Android Studio импорт такой

  1. Перейти к pubspec.yaml
  2. Добавить зависимость http: ^0.12.0+2
  3. Нажмите на Пакеты, чтобы попасть наверх

enter image description here

Несколько важных вещей:

1) Следуйте правильному отступу при добавлении зависимости.

Правильный:

dependencies:
  flutter:
    sdk: flutter
  http: ^0.12.0+2

Неправильно:

dependencies:
  flutter:
    sdk: flutter
    http: ^0.12.0+2

Если вы добавите такую зависимость и нажмете " Получить пакеты",
Вы получите ошибку:

Ошибка в строке 21, столбец 5 файла pubspec.yaml: у зависимости может быть только один источник. SDK: флаттер

2) Поиск пакета и последняя зависимость.

Вы можете найти последнюю версию HTTP здесь
Все пакеты Dart публикуются на Pubsite, где вы можете найти и увидеть актуальные пакеты. enter image description here

Ответ 4

Добавлять:

dependencies:
flutter:
sdk: flutter
http: ^0.12.0

в pubspec.yaml, обновите Packages.get и Packages.upgrade. Если все еще не работает, перезапустите IDE.

Ответ 5

Ваш код выглядит хорошо. Однако после прочтения комментариев ниже ответа Андрея, вы также должны убедиться, что запускаете flutter packages get или pub get после добавления зависимости http в ваш pubspec.yaml.

Ответ 6

Добавьте зависимости к pubspec следующим образом.

dependencies:
  http: ^0.12.0

**** обновляй пакеты получай.

**** обновить зависимости.

Ответ 7

dependencies:
  flutter:
    sdk: flutter

  # The following adds the Cupertino Icons font to your application.
  # Use with the CupertinoIcons class for iOS style icons.
  cupertino_icons: ^0.1.2
  http: ^0.12.0

Ответ 8

Перейдите в файл pubspec.yaml. затем добавьте

http: любой

ниже зависимости:

  dependencies:
    flutter:
    sdk: flutter

    cupertino_icons: ^0.1.2
    http: any

затем нажмите Пакеты получить

Ответ 9

попробуйте добавить зависимости http до появления зависимостей flutter и нажмите кнопку Packages get

dependencies:
  http: ^0.12.0
  flutter:
    sdk: flutter

Если вы поставите после флаттера, то это сделает ошибку. Надеюсь это поможет

Ответ 10

После выполнения всех шагов, предоставленных @Bawantha, если проблема не устранена, попробуйте выполнить следующие шаги, которые спомогли мне.

  1. Перезапустите свою андроид студию.
  2. Перейти к панели инструментов инспектора
  3. Нажмите кнопку обновления информации о виджете.enter image description here

Примечание. Убедитесь, что у вас есть права администратора для этого.

Ответ 11

Удалите содержимое из папки .pub-cache, расположенной в каталоге установки вашего флаттера, а затем создайте пустой проект флаттера в коде android studio/VS, добавьте зависимости http и нажмите "Пакеты получить".

Обратите внимание, что пакет "http" должен быть создан в папке .pub-cache\hosted\pub.dartlang.org, а затем в вашем текущем проекте откройте файл pubspec.yaml и нажмите "Packages get", теперь этот трюк должен разрешить ваш "http" зависимостей.

Примечание. Убедитесь, что ваша сеть не блокирует загрузку с сайта Pub, и текущий проект закрывается при добавлении зависимостей http в другой проект.

Ответ 12

Прежде всего, просто перезапустите редактор кода Знак ^ не является обязательным. Вы можете добавить в свой pubspec.yaml

dependencies:
  http: 0.12.0+2

flutter packages get вызывается автоматически при сохранении файла, если вы используете VSCode или Android studio.

Проблема для меня была решена путем перезапуска VSCode.