together_mobile/lib/request/server.dart

37 lines
1.2 KiB
Dart

import 'package:dio/dio.dart';
final baseOptions = BaseOptions(
baseUrl: 'http://10.0.2.2:8000/api',
connectTimeout: const Duration(seconds: 5),
receiveTimeout: const Duration(seconds: 5),
);
var request = Dio(baseOptions)
..interceptors.add(
InterceptorsWrapper(
onRequest: (RequestOptions options, RequestInterceptorHandler handler) {
String baseUrl = options.baseUrl.replaceFirst('/api', '');
options.baseUrl = baseUrl;
return handler.next(options);
},
onResponse: (Response response, ResponseInterceptorHandler handler) {
if (response.statusCode! >= 200 && response.statusCode! < 400) {
return handler.resolve(response);
} else {
handler.reject(
DioException.badResponse(
statusCode: response.statusCode!,
requestOptions: RequestOptions(),
response: response,
),
);
}
},
onError: (DioException e, ErrorInterceptorHandler handler) {
// print('错误信息:' + e.response?.data);
// print('错误码: ${e.response?.statusCode}');
handler.reject(e);
},
),
);