gpt4 book ai didi

flutter - 什么时候关闭 Flutter 应用程序中的 HTTP 客户端?

转载 作者:IT王子 更新时间:2023-10-29 06:41:57 33 4
gpt4 key购买 nike

我的 Flutter 移动应用程序与我的后端服务器通信。文档说使用 Client 类 (IOClient) 比普通的 getput 等方法更好在对同一服务器的多个请求之间保持持久连接。 Docs还说:

It's important to close each client when it's done being used; failingto do so can cause the Dart process to hang.

我不明白什么时候需要关闭客户端,因为几乎所有的应用程序屏幕都需要 HTTP 连接到同一台服务器。这里的最佳做法是什么?

更新:

仅在应用程序终止之前关闭 Client 是否可以,还是我应该在每次隐藏应用程序(进入 paused 状态)时关闭它?

最佳答案

我个人认为在每次用户操作后关闭客户端是最佳做法。

我所说的“用户操作”可以由多个 API 请求构成。

所以我认为最好的是这样的:

var client = http.Client();
try {
var response = await client.post(
Uri.https('my-api-site.com', 'users/add'),
body: {'firstname': 'Alain', 'Lastname': 'Deseine'});
var Response = jsonDecode(utf8.decode(response.bodyBytes)) as Map;
...
// Add here every API request that you need to complete the users action
} finally {
// Then finally destroy the client.
client.close();
}

关于flutter - 什么时候关闭 Flutter 应用程序中的 HTTP 客户端?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57623912/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com