Flutter Future 返回未来的实例

Flutter Future returning instance of future

我正在拨打 api 电话以接收数据。当我打电话时,我会得到一个未来的实例。为什么这仍然是 return 未来的实例而不是等待数据?

这是我的网络文件

class NetworkHelper {
  NetworkHelper(this.url);

  final String url;

Future getSecureData(String token) async {
    http.Response response = await http.post(
      Uri.parse(url),
      headers: {
        HttpHeaders.authorizationHeader: token,
      },
    );
    var data = response;
    return data;
  }

这是我的帐户设置文件

class AccountSettings extends StatefulWidget {
  const AccountSettings({Key? key}) : super(key: key);
  static const String id = 'account_settings';

  @override
  State<AccountSettings> createState() => _AccountSettingsState();
}

class _AccountSettingsState extends State<AccountSettings> {
  var userData;

  @override
  void initState() {
    super.initState();

    getUserData();
  }

  Future getUserData() async {
    var token = await SecureStorage.getAccessToken();
    var jwttoken = 'JWT ' + token!;
    NetworkHelper networkHelper =
        NetworkHelper('http://localhost:8000/auth/users/me');
    userData = await networkHelper.getSecureData(jwttoken);
  }

  @override
  Widget build(BuildContext context) {
    print(userData);
    return Scaffold(

您的 getSecureData 方法正在返回一个没有关联类型的 Future,因此请尝试向 Future 添加一个类型,例如

Future<SomeType> getSecureData() async {
    //..
}