从HttpRequest

时间:2016-01-08 16:05:28

标签: dart dart-html dart-async

在Dart我可以做到:

await HttpRequest.getString(path)

这将返回一个字符串。

我想创建一个会做同样的方法,但是像这样:

HttpRequest request = new HttpRequest();
request
    ..open('Get',getPath)
    ..setRequestHeader('Content-Type','application/json')
    ..send('');
...
return responseString;

我可以使用事件和期货来做,但我想了解如何使用async&等等。

编辑: 这是针对dart:html HttpRequest for browser。

1 个答案:

答案 0 :(得分:5)

Haven没试过,但我想这就是你要找的东西

import 'dart:html';
import 'dart:async';

main() async {
 print(await getString());
}

Future<String> getString() async {
  String getPath = 'https://dartpad.dartlang.org/';
  HttpRequest request = new HttpRequest();
  request
    ..open('Get',getPath)
    ..setRequestHeader('Content-Type','application/json')
    ..send('');

  // request.onReadyStateChange.listen(print);
  await request.onLoadEnd.first;

  return request.responseText;
}