大佬教程收集整理的这篇文章主要介绍了dart – 设置HTTPClient get()请求的超时,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
void _getSimpleReply( String command,callBACk,errorCallBACk ) async { try { httpClientrequest request = await _myClient.get( _serverIpaddress,_serverPort,'/' ); httpClientResponse response = await request.close(); response.transform( utf8.decoder ).listen( (onData) { callBACk( onData ); } ); } on SocketException catch( e ) { errorCallBACk( e.toString() ); } }
如果服务器没有运行,Android-app或多或少会立即调用errorCallBACk.
设置每个请求超时
您可以使用Future.timeout
方法在任何Future上设置超时.通过抛出TimeoutException,在给定的持续时间过后,这将短路.
try { final request = await client.get(...); final response = await request.close() .timeout(const Duration(seconds: 2)); // rest of the code ... } on TimeoutException catch (_) { // A timeout occurred. } on SocketException catch (_) { // Other exception }
在httpClient上设置超时
您还可以使用HttpClient.connectionTimeout
在httpClient本身上设置超时.这将适用于设置超时后由同一客户端发出的所有请求.当请求超过此超时时,将抛出SocketException.
final client = new httpClient(); client.connectionTimeout = const Duration(seconds: 5);
以上是大佬教程为你收集整理的dart – 设置HTTPClient get()请求的超时全部内容,希望文章能够帮你解决dart – 设置HTTPClient get()请求的超时所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。