Flutter:连接在接收数据时关闭
Flutter: Connection closed while receiving data
我正在调用 post API,有时我从服务器得到响应,有时我收到异常 Connection closed while receiving data
。两种情况下的请求都相同,根据后端服务器日志,已发送响应但我没有收到。
我在模拟器和实际设备中都有这个问题。
try {
final result =
await http.post(url, body: encodedBody, headers: apiHeader);
Map<String, dynamic> response = json.decode(result.body);
print("Response: $response");
return response;
} catch (error) {
Map<String, dynamic> response = Map<String, dynamic>();
response['success'] = false;
response['message'] = error;
return response;
}
这取决于您尝试调用的服务器或 Rest API。
有时需要仔细检查您是否使用了有效且适当的 URL 端点。
另一种可能是它没有在 header 正确接收身份验证。我曾经遇到过这个问题,它通过 url 作为端点进行身份验证得到了解决。尝试研究服务器或 rest api 是否支持最后提到的其他身份验证选项。
Keep-Alive
header 在您的请求的 headers 中可能丢失,请检查所需的 APIs headers
我遇到了获取请求的问题,有时我从服务器得到响应,有时我在同一个按钮单击事件中收到异常 Connection closed while receiving data
。然后我发现数据库中特定 table 的记录数相当大。我建议的解决方案是在 backend server
.
中使用 pagination
我正在调用 post API,有时我从服务器得到响应,有时我收到异常 Connection closed while receiving data
。两种情况下的请求都相同,根据后端服务器日志,已发送响应但我没有收到。
我在模拟器和实际设备中都有这个问题。
try {
final result =
await http.post(url, body: encodedBody, headers: apiHeader);
Map<String, dynamic> response = json.decode(result.body);
print("Response: $response");
return response;
} catch (error) {
Map<String, dynamic> response = Map<String, dynamic>();
response['success'] = false;
response['message'] = error;
return response;
}
这取决于您尝试调用的服务器或 Rest API。
有时需要仔细检查您是否使用了有效且适当的 URL 端点。
另一种可能是它没有在 header 正确接收身份验证。我曾经遇到过这个问题,它通过 url 作为端点进行身份验证得到了解决。尝试研究服务器或 rest api 是否支持最后提到的其他身份验证选项。
Keep-Alive
header 在您的请求的 headers 中可能丢失,请检查所需的 APIs headers
我遇到了获取请求的问题,有时我从服务器得到响应,有时我在同一个按钮单击事件中收到异常 Connection closed while receiving data
。然后我发现数据库中特定 table 的记录数相当大。我建议的解决方案是在 backend server
.
pagination