颤振如何发出实时请求

时间:2020-06-24 11:15:31

标签: flutter dart

您好,我正在编写一个Flutter应用程序,在其中我必须从服务器打印json数据。 数据是异步的,这意味着总会有一个不断变化的新数据。例如,如果经过一段时间(例如1分钟)后有{aa=5, bb=6},则json数据更改为{aa=10,bb=8}。我希望服务器中的每次数据更改都应该在我的应用程序中更改。我提出了一个获取请求,但只能一次获取数据。

 Future<String> getData() async {

    http.Response response = await http.get(
         Uri.encodeFull("http://chicken20.pythonanywhere.com/jsonn"),
        headers: {"Accept": "application/json"});
    print(response.body);
    data = json.decode(response.body);

  x1 =data['alm'].toString();
x2=data['alm'].toString();
 x3=data['co2'].toString();
   x4=data['hu'].toString();
 x5=data['temp'].toString();
   print('aaaaaa $x1,$x2,$x3,$x4,$x5');


    return "Success!";

  }

这就是我在应用程序界面中打印数据的方式

: ListView.builder(
        itemCount: 1,
        itemBuilder: (BuildContext context, int index) {
          return new Column(
              children:<Widget>[

                Card(child:Text('alm :${x2}')),
                Card(child:Text('co2 :$x3')),
                Card(child:Text('hu :$x4')),
                Card(child:Text('temp :$x5')),

              ]);
        },
      ),

这是我的json格式

{"alm":3,"co2":1,"hu":2,"temp":6,"th":11,"tm":14,"ts":13}

我需要一些帮助,谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用StreamBuilder Flutter Docs - StreamBuilder