【问题标题】:HTTP Connection issueHTTP 连接问题
【发布时间】:2019-07-17 13:46:55
【问题描述】:

几天来,当我从端点 Exception has occurred. ClientException (Connection closed before full header was received) 加载数据时,我一直收到此错误

import 'package:http/http.dart' show Client;

Client client = Client();

Future<Platoons> fetchMeatifyById(String id) async {
    final response = await client.get('$_baseApi/platoons/$id');

    if (response.statusCode == 200 || response.statusCode == 201) {
      return Platoons(json.decode(response.body));
    } else {
      throw Exception('Failed to load platoon');
    }
  }

【问题讨论】:

    标签: http dart flutter


    【解决方案1】:

    使用 Dart 的另一个 Http 客户端 Dio 解决了上述问题,简单但功能强大,能够控制应用程序。

    简单的 HTTP 请求

    class CartApiProvider {
      Dio _dio;
    
      CartApiProvider(){
        _dio = new Dio();
        _dio.interceptors.add(MeatityHttpInterceptor());      
      }  
    
     Future<OrderDetailResponse> fetchOrderInfo(String orderNo) async {
        try{
          Response response = await _dio.get('/orders/$orderNo');
          return OrderDetailResponse.fromJson(response.data);
        }catch (error, stacktrace){
          return OrderDetailResponse.withError(HttpErrorHandler.handleError(error));
        }
      }
    
    }
    

    【讨论】:

      猜你喜欢
      • 2011-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-17
      • 2021-07-16
      相关资源
      最近更新 更多