Flutter 如何在flatter中直接打印GET请求体中接收到的JSON

Flutter 如何在flatter中直接打印GET请求体中接收到的JSON,flutter,Flutter,我的意图是使用或任何类似的HTTP客户机发出GET请求,以便接收JSON数据/正文并将其打印到控制台 我编写了以下代码来实现这一点 fetchQuestion(String userIdentifier) async { String urlToCall = "someURLhere"; try { Response response = await Dio().get( urlToCall,

我的意图是使用或任何类似的HTTP客户机发出GET请求,以便接收JSON数据/正文并将其打印到控制台

我编写了以下代码来实现这一点

fetchQuestion(String userIdentifier) async {
        String urlToCall =
            "someURLhere";

        try {
          Response response = await Dio().get(
            urlToCall,
            options: Options(headers: {
              HttpHeaders.authorizationHeader: "Bearer " + userIdentifier,
            }),
          );

          print(response.data);
        } catch (e) {
          print(e);
        }
      }
此代码的问题是,当我打印
response.data
时,只打印
null
。尽管我确信响应数据包含一个JSON文件

我已经在后端进行了检查,得到了
200
状态码。此外,打印
response.headers
会打印我期望的标题。只有
响应.body
打印
null

我尝试过的问题包括

  • 使用
    打印(utf8.decode(response.data))

  • 使用
    json.decode(response.data)
    ->在这种情况下
    NoSuchMethodError:对null调用了getter“length”。
    error


  • 如果您能在打印收到的JSON文件方面提供任何帮助,我将不胜感激。

    您是否打印了just response以查看其中有哪些字段。 我没有使用过DIO,但http包对我来说很好:

    import 'package:http/http.dart' as http;
    ...    
    final response = await http.get(Url);
    

    打印
    (响应)
    使用DIO打印
    null
    。但同样的请求,当使用http包实现时,会打印一个
    future
    引用。有没有办法在将来可以打印之前暂停打印?是的,我必须使用FutureBuilder和snapshot来访问实际数据。