我正在使用flutter开发一个应用程序。基于来自一个rest API的响应,我需要路由到不同的屏幕。由于flutter中的HTTP调用是异步的,我很难在收到响应之前阻止它。在收到响应之前,执行路由逻辑,并根据先前初始化的值进行路由。我如何同步调用,请告知。
尝试使用以下软件包:sync_http/sync_http.dart,但总是失败。该软件包也没有足够的文档
SyncHttpClientRequest request = SyncHttpClient.postUrl(Uri.parse('http://{serveraddress}:{port}/{apiname}/$param1/$param2'));
SyncHttpClientResponse response = request.close();
1条答案
按热度按时间p5fdfcr11#
尝试Flutter HTTP或DIO包:
https://pub.dev/packages/http
https://pub.dev/packages/dio
你可以使用await关键字进行异步调用。
例如:
var response = wait www.example.com(网址,正文:您的请求正文);http.post(url, body: your request body);
上面的代码将等待,直到它从http得到响应。确保编码/解码你的数据。