HTTP 连接问题

标签 http dart flutter

几天来,当我从端点 加载数据时,我一直收到此错误。发生异常。 ClientException(连接在收到完整 header 之前关闭)

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');
    }
  }

enter image description here

最佳答案

为 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));
    }
  }

}

关于HTTP 连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54844472/

相关文章:

http - 从 https 转换回 http

javascript - 需要来自 Angular js 的跨源请求示例

android-studio - 使用Flutter中其他类的函数

android - Flutter - 像素溢出的不明原因

flutter - TextField Causing 'Looking up a deactivated widget' 的祖先是不安全的。 flutter

ios - 提交到 App Store 的所有应用程序都必须支持纯 IPv6 网络

iphone - Http直播到iphone

flutter - 类型不是 Map<String,dynamic> 类型的子类型,@JsonSerialized()

android - 用于选择行和/或元素的 Flutter longPress 事件功能

如果已经被拒绝,Flutter Permission Handler 不会重新请求许可