Flutter http包不存在

nim*_*mzz 28 http dart flutter

通常应该像这样导入包:

import 'package:http/http.dart' as http;
Run Code Online (Sandbox Code Playgroud)

但现在我收到这个错误:

[dart] URI的目标不存在:'package:http/http.dart'.[uri_does_not_exist]

在Flutter的新更新中它是否以某种方式改变了?如果是这样,我现在如何执行获取请求?

Baw*_*tha 41

这是将http添加到flutter的明确方法

  1. 将此添加到包的pubspec.yaml文件中:
dependencies:
  http: ^0.12.0 // latest one might change
Run Code Online (Sandbox Code Playgroud)
  1. 安装它可以从命令行安装软件包:

与酒吧:

$ pub get

使用Flutter:

$ flutter packages get

  1. 现在将其导入Dart代码中,您可以使用:

import 'package:http/http.dart';

如果完成了这三个步骤,请重新启动代码编辑器

  • 我不知道重新启动后它对我不起作用。 (3认同)
  • 重新启动代码编辑器的部分似乎很重要。那对我有用。 (2认同)
  • 重新启动Android Studio对我来说解决了这个问题。 (2认同)

And*_*sky 15

你把它添加到了pubspec吗?

dependencies:
  flutter:
    sdk: flutter

  http: 0.12.0
Run Code Online (Sandbox Code Playgroud)


Roh*_*ngh 9

在Android Studio中这样导入

  1. pubspec.yaml
  2. 添加依赖 http: ^0.12.0+2
  3. 点击Packages进入顶部

在此处输入图片说明

一些重要的事情:

1)在添加依赖项时遵循适当的缩进

正确:

dependencies:
  flutter:
    sdk: flutter
  http: ^0.12.0+2
Run Code Online (Sandbox Code Playgroud)

不正确:

dependencies:
  flutter:
    sdk: flutter
    http: ^0.12.0+2
Run Code Online (Sandbox Code Playgroud)

如果您添加像这样的依赖关系并点击Packages get then,
您将收到错误:

pubspec.yaml的第21行第5列错误:依赖项可能只有一个源。SDK:颤振

2)查找程序包和最新依赖项。

您可以在此处找到最新的HTTP包
所有Dart包都发布在Pubsite上,您可以在其中找到并查看趋势包。 在此处输入图片说明


Gio*_*gen 5

你的代码看起来不错。但是,在阅读安德烈的答案下面的评论后,您还必须确保在flutter packages get将依赖项pub get添加http到您的pubspec.yaml.


小智 5

添加:

dependencies:
flutter:
sdk: flutter
http: ^0.12.0
Run Code Online (Sandbox Code Playgroud)

pubspec.yaml,更新Packages.getPackages.upgrade。如果仍然无法正常工作,请重新启动 IDE。


Sho*_*har 5

这里的答案提到了软件包版本。如果您不知道软件包版本,但知道软件包名称(如您的情况),只需执行以下操作:

flutter pub add <package_name>
Run Code Online (Sandbox Code Playgroud)

在您的情况下,这会翻译为flutter pub add http.

这始终会获取您可以在项目中使用的最新包。