flutter 手机端抓包设置

核心代码设置:

(dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate =
        (HttpClient client) {
      client.findProxy = (uri) {
        return "PROXY 172.170.88.128:8888";
      };
    };
import 'dart:io';

import 'package:dio/adapter.dart';
import 'package:dio/dio.dart';
import 'package:flutter/foundation.dart';
import 'package:fluttertoast/fluttertoast.dart';
import 'package:maistore_app/config/constant.dart';
import 'package:maistore_app/model/result.dart';

class MmcRequest {
  static var dio = Dio(
    BaseOptions(
        baseUrl: Constant.baseUrl, setRequestContentTypeWhenNoPayload: true),
  );

  static void init() {
    if (kDebugMode) {
      dio.interceptors
          .add(LogInterceptor(requestBody: true, responseBody: true));
    }

    (dio.httpClientAdapter as DefaultHttpClientAdapter).onHttpClientCreate =
        (HttpClient client) {
      client.findProxy = (uri) {
        return "PROXY 172.170.88.128:8888";
      };
    };


    dio.interceptors.add(InterceptorsWrapper(
      onRequest: (options, handler) {
        return handler.next(options);
      },
      onResponse: (response, handler) {
        final statusCode = response.statusCode;
        if (statusCode != null && statusCode >= 200 && statusCode < 300) {
          final result = ResultData<dynamic>.fromJson(response.data);
          if (result.code >= 200 && result.code < 300) {
            response.data = result.data;
            return handler.next(response);
          }
          Fluttertoast.showToast(msg: result.msg ?? "${result.code}");
        } else {
          Fluttertoast.showToast(
              msg: response.statusMessage ?? "${response.statusCode}");
        }
        return handler
            .reject(DioError(requestOptions: response.requestOptions));
      },
      onError: (error, handler) {
        final response = error.response;
        Fluttertoast.showToast(
            msg: response == null
                ? error.message
                : ResultData.fromJson(response.data).msg ?? "");
        return handler.reject(error);
      },
    ));
  }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值