Flutter Future Return未来的实例
我正在拨打接收数据的API调用。当我打电话时,我会恢复未来的实例。为什么这仍然返回未来的实例而不是等待数据?
这是我的网络文件
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(
I am making an api call to receive data. When I make the call, I get back an instance of future. Why does this still return an instance of future instead of waiting for the data?
Here is my networking file
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;
}
Here is my Account Settings file
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(
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)