Skip to content

Dio 网络请求

基本配置

dart
final dio = Dio(BaseOptions(
  baseUrl: 'https://api.example.com',
  connectTimeout: Duration(seconds: 5),
  receiveTimeout: Duration(seconds: 3),
));

GET / POST

dart
// GET
final response = await dio.get('/users', queryParameters: {'page': 1});

// POST
final response = await dio.post('/users', data: {'name': 'YC'});

拦截器

dart
dio.interceptors.add(InterceptorsWrapper(
  onRequest: (options, handler) {
    options.headers['Authorization'] = 'Bearer $token';
    handler.next(options);
  },
  onError: (error, handler) {
    // 统一错误处理
    handler.next(error);
  },
));

基于 VitePress 构建