Dart BoundSinkStream异常

问题描述 投票:1回答:1

我最近正在尝试扑动。试图显示一些数据,以测试颤振的ui概念。然而,每当我想为某些事情打电话给休息时,它就会出现奇怪的异常(这对我来说很难读)。

下面是一个示例代码(主要来自https://flutter.io/networking/

 loadData(String url) async {
    var uri = Uri.parse(url);
    var request = await httpClient.getUrl(uri);
    var response = await request.close();
    if (response.statusCode == HttpStatus.OK) {
      var responseBody = await response.transform(UTF8.decoder).join();

      await print(responseBody);
    }
  }

以及它返回的异常:

type '_BoundSinkStream<dynamic, List<int>>' is not a subtype of type '_HttpIncoming' where
_BoundSinkStream is from dart:async
List is from dart:core
int is from dart:core
List is from dart:core
int is from dart:core
_HttpIncoming is from dart:_http
List is from dart:core
int is from dart:core
#0_HttpClientResponse.listen (dart:_http/http_impl.dart:382:23)
#1new _SinkTransformerStreamSubscription (dart:async/stream_transformers.dart:49:16)
#2_BoundSinkStream.listen (dart:async/stream_transformers.dart:185:13)
#3Stream.join (dart:async/stream.dart:741:25)
#4HttpConnector.loadData (package:flutter_app/providers/HttpConnector.dart:26:63)
<asynchronous suspension>
#5WeatherProvider.loadWeather (package:flutter_app/providers/WeatherProvider.dart:12:42)
<asynchronous suspension>
#6 _MyHomePageState._loadData (file:///Users/krzysztofbalana/Private/flutter_app/lib/main.dart:64:21)
dart flutter
1个回答
0
投票

根据您构造和获取数据的方式,存在类型不匹配的情况。我创建了一个可以帮助您的虚拟示例:

class FakeApi extends StatelessWidget {
  _loadData() async{
    String url = "https://jsonplaceholder.typicode.com/users";
    var httpClinet = createHttpClient();
    var response = await httpClinet.get(url);
    var _myRequest = JSON.decode(response.body);
    print(_myRequest);
    print(_myRequest[0]);
    ///so forth

  }
  @override
  Widget build(BuildContext context) {
    return new Container(
      child: new Center(
        child: new RaisedButton(onPressed: _loadData,child: new Text("Fetch"),),
      ),
    );
  }
© www.soinside.com 2019 - 2024. All rights reserved.