使用 Dart 从主 URL 中读取数据内容

Gér*_*art 3 dart

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

import "dart:html" ;

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

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

我该怎么做 ?

Chr*_*man 6

打印内容:

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));
}
Run Code Online (Sandbox Code Playgroud)

或将其写入文件:

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()));
}
Run Code Online (Sandbox Code Playgroud)


dhe*_*ddy 5

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

print(await http.read('https://example.com/foobar.txt'));
Run Code Online (Sandbox Code Playgroud)

最简单的方法