4

在 main() 中,我想从 url 读取文件。使用“dart:html”中的 HttpRequest 非常容易,但它不能从命令行工作:

import "dart:html" ;

main(){
  String url ="http://foo.bar/foo.txt";
  HttpRequest.getString(url).then((content){
    print(content);
  });
}

=> 内置库 'dart:html' 在独立 VM 上不可用。

我该怎么做 ?

4

3 回答 3

7

打印内容:

import 'dart:convert';
import 'dart:io';

main() {
  new HttpClient().getUrl(Uri.parse('http://foo.bar/foo.txt'))
    .then((HttpClientRequest request) => request.close())
    .then((HttpClientResponse response) => response.transform(new Utf8Decoder()).listen(print));
}

或将其写入文件:

import 'dart:convert';
import 'dart:io';

main() {
  new HttpClient().getUrl(Uri.parse('http://foo.bar/foo.txt'))
    .then((HttpClientRequest request) => request.close())
    .then((HttpClientResponse response) => response.pipe(new File('foo.txt').openWrite()));
}
于 2013-10-29T15:49:15.390 回答
5
import 'package:http/http.dart' as http;

print(await http.read('https://example.com/foobar.txt'));

最简单的方法

于 2020-09-07T18:00:06.247 回答
0

您必须使用 Pub 的 Http 包。http://pub.dartlang.org/packages/http

于 2013-10-29T15:39:37.780 回答