1、依赖
#cookie管理
dio_cookie_manager: ^2.0.0
cookie_jar: ^3.0.1
# 弹窗:https://github.com/fluttercandies/flutter_smart_dialog
flutter_smart_dialog: ^4.5.3+2
2、网络请求封装
typedef ResponseCallBack<T> = Function(T model); //对象数据方法
typedef ResponseListCallBack<O> = Function(List<O> model); //列表数据方法
typedef ResponseCodeCallBack<int> = Function(int code); //code值
///网络请求
class DioManager {
late Dio _dio;
late CancelToken cancelToken;
late ResponseCallBack _callBack;
DioManager() {
init();
}
void init() {
var baseUrl = "https://www.baidu.com/";
var options = BaseOptions(
baseUrl: baseUrl,
connectTimeout: 30000,
receiveTimeout: 30000,
);
cancelToken = CancelToken();
_dio = Dio(options);
var interceptors = _dio.interceptors;
var cookieJar = CookieJar();
interceptors