导入 'dart:html' 失败
import 'dart:html' is Failing
我正在尝试使用 HttpResponse.getString()
来获取一些数据,但我无法将其导入。我正在使用 Dart 虚拟机。
我试过了
import 'dart:html'
这给了我 Error: Not found: 'dart:html'
import 'package:http/http.dart
但是这个包没有 HttpRequest
class
import 'dart:io'
有 class 但没有 getString()
方法
这是我的代码
void main() async {
Future<String> data = HttpRequest.getString('localhost:8000');
print(data);
}
为什么我无法访问此 class 和方法?
你运行你的程序怎么样?
dart:html
仅适用于浏览器内的应用程序 运行。
package:http
与 dart:html
不同,因此还有其他 类。但是你可以通过使用那个包来达到同样的效果。
dart:io
仅在 运行 您的应用程序通过 Dart VM 时可用。但是您可以使用它来实现相同的目的,但是您需要以不同的方式编写代码。
因为你得到错误 Error: Not found: 'dart:html'
我假设你正试图让它在 Dart VM 中工作。
如果你想使用 http
包,你可以这样做,我认为这是获得你想要的东西的最简单方法:
import 'package:http/http.dart' as http;
Future<void> main() async {
Future<String> data = http.read('localhost:8000');
print(await data);
}
如果你想使用 dart:io
可以这样做:
import 'dart:convert';
import 'dart:io';
Future<void> main() async {
final clientRequest = await HttpClient().getUrl(Uri.parse('localhost:8000'));
final clientResponse = await clientRequest.close();
final data = await clientResponse
.transform(const Utf8Decoder())
.fold<StringBuffer>(
StringBuffer(), (buffer, element) => buffer..write(element));
print(data.toString());
}
我正在尝试使用 HttpResponse.getString()
来获取一些数据,但我无法将其导入。我正在使用 Dart 虚拟机。
我试过了
import 'dart:html'
这给了我Error: Not found: 'dart:html'
import 'package:http/http.dart
但是这个包没有HttpRequest
classimport 'dart:io'
有 class 但没有getString()
方法
这是我的代码
void main() async {
Future<String> data = HttpRequest.getString('localhost:8000');
print(data);
}
为什么我无法访问此 class 和方法?
你运行你的程序怎么样?
dart:html
仅适用于浏览器内的应用程序 运行。package:http
与dart:html
不同,因此还有其他 类。但是你可以通过使用那个包来达到同样的效果。dart:io
仅在 运行 您的应用程序通过 Dart VM 时可用。但是您可以使用它来实现相同的目的,但是您需要以不同的方式编写代码。
因为你得到错误 Error: Not found: 'dart:html'
我假设你正试图让它在 Dart VM 中工作。
如果你想使用 http
包,你可以这样做,我认为这是获得你想要的东西的最简单方法:
import 'package:http/http.dart' as http;
Future<void> main() async {
Future<String> data = http.read('localhost:8000');
print(await data);
}
如果你想使用 dart:io
可以这样做:
import 'dart:convert';
import 'dart:io';
Future<void> main() async {
final clientRequest = await HttpClient().getUrl(Uri.parse('localhost:8000'));
final clientResponse = await clientRequest.close();
final data = await clientResponse
.transform(const Utf8Decoder())
.fold<StringBuffer>(
StringBuffer(), (buffer, element) => buffer..write(element));
print(data.toString());
}