request_client使用细节

bot_toast配合 request_client处理错误提示

request_client初始化

RequestConfig(baseUrl: "your base url");
RequestClient.init(config: RequestConfig.instance);

注意配置BotToastInit

@override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      builder: BotToastInit(),
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }

request_client 其他配置参数

String? baseUrl;
int connectTimeOut = 10; //请求超时
int writeTimeOut = 10;
int readTimeOut = 10;
int successCode = 200; //成功状态码
String dataKey = "data"; //数据key
String codeKey = "code"; //状态码key
String messageKey = "msg"; //消息key
List enableLoginCodes = []; //登陆实效的code集合
InterceptorRequestBack? requestCall; //请求拦截配置 设置token
InterceptorBack? loginOutCall; //token失效拦截器回调

request_client修改配置

RequestConfig.instance.successCode = 0;
RequestConfig.instance.dataKey = "data";
RequestConfig.instance.codeKey = "code";
RequestConfig.instance.messageKey = "msg";
RequestClient.init(config: RequestConfig.instance);

example

import 'package:request_client/request_client.dart';
var res = await RequestClient.instance.request("/path", method: RequestType.POST,data: {"email": "email"});