Глобальная конфигурация (перехватчик) для дио во флаттере - PullRequest
1 голос
/ 25 сентября 2019

Первый раз с флаттером.Я использую Dio для отправки HTTP-запросов, и мне нужно добавить заголовок ко всем запросам, что я делаю с перехватчиком, например:

Dio dio = new Dio();
dio.interceptors.add(InterceptorsWrapper(
    onRequest:(RequestOptions options) async {
      options.headers["X-Requested-With"] = "XMLHttpRequest";
    })
);

Это работает в main.dart, но если яЯ хочу импортировать другой класс, такой как MyHomePage.dart, и выполнять там HTTP-запросы. Мне нужно переопределить перехватчик и в этом классе.

Как я могу реализовать этот перехватчик для всего моего приложения, не добавляя его в каждое.дротик?

1 Ответ

0 голосов
/ 25 сентября 2019

Создайте функцию, в которой находится DIO, и затем вызовите ее, где это необходимо.

Dio getDio() {
  Dio dio = new Dio();
  dio.interceptors.add(InterceptorsWrapper(onRequest: (RequestOptions options) async {
    options.headers["X-Requested-With"] = "XMLHttpRequest";
  }));
  return dio;
}
...