我正在从 express API 向颤振应用程序发送 GET 请求,但我没有得到任何输出

Posted

技术标签:

【中文标题】我正在从 express API 向颤振应用程序发送 GET 请求,但我没有得到任何输出【英文标题】:I am sending the GET request to the flutter app from the express API but I am not getting any output 【发布时间】:2021-06-24 02:20:48 【问题描述】:

我正在从 express API 向 Flutter 应用程序发送 GET 请求,但在 Flutter 应用程序中没有得到任何输出。 API 在邮递员中工作,我在邮递员中得到了完美的输出。

请帮忙

  testing() async

debugPrint("Hello");

http.Response response = await 
http.get("http://192.168.119.97:3000/api/cricketer");
debugPrint((response.body));

debugPrint("Hello hy");

Future getData() async 
http.Response response = await 
http.get("http://192.168.119.97:3000/api/cricketer");
debugPrint((response.body));
data = json.decode(response.body);
debugPrint(('$data'));
setState(() 
  userData = data["cricketers"];
  debugPrint("Hello ");
  debugPrint(('$userData'));
);
   

调用函数:

 @override
 void initState() 
 super.initState();
 getData();
 testing();
 

  @override
  Widget build(BuildContext context) 
   return Scaffold(
     appBar: AppBar(
     title: Text("Cricketer Info"),
      backgroundColor: Colors.pink,
       ),
       body: ListView.builder(
       itemCount: userData == null ? 0 : userData.length,
        itemBuilder: (BuildContext context, int index) 
         return Card(
           child: Padding(
            padding: const EdgeInsets.all(10.0),
           child: Row(
             children: <Widget>[
              // CircleAvatar(
              //   backgroundImage: NetworkImage(userData[index][""]),
              // ),
              Padding(
                padding: const EdgeInsets.all(10.0),
                child: Text("$userData[index]["name"]",
                  style: TextStyle(
                    fontSize: 20.0,
                    fontWeight: FontWeight.w700,
                  ),),
              )
            ],
          ),
        ),
      );
       ,
     ),
   );
 

我也上传了代码。请检查并在可能的情况下提供帮助

【问题讨论】:

请使用代码而不是图片。还要附上你调用函数的代码部分,这只是方法的定义。 我也添加了代码。请检查 【参考方案1】:

首先,您必须对正文进行 JSON 解码以进行打印, json.decode() 会产生一些误导。您可以使用 'dart:convert' package 中的 jsonDecode(result.body) 。这里我附上了一些 登录示例代码(发布请求)。解码后,您可以使用数据模型和工厂方法转换为 dart 对象。

repo dart file that send post request

my data model with a factory method for decode json to dart

【讨论】:

以上是关于我正在从 express API 向颤振应用程序发送 GET 请求,但我没有得到任何输出的主要内容,如果未能解决你的问题,请参考以下文章

使用 express.router() 使用 api 密钥向第三方 API 发出获取请求;

如何从 Prestashop API 检索更多数据到我的颤振应用程序?

从后台颤振隔离向Android方法发送平台消息

数据不会在颤振中从 API 加载。我该如何解决?

从json颤振中获取数组

在 API 调用 Node express 服务器后显示错误消息