Sobes.tech
Junior — Middle

Как да прекъснем HTTP заявка, изпълнена с библиотеката Dio?

sobes.tech AI

Отговор от AI

В библиотеката Dio за Flutter можете да прекъснете HTTP заявка с помощта на обекта CancelToken.

Пример:

import 'package:dio/dio.dart';

final dio = Dio();
final cancelToken = CancelToken();

// Стартиране на заявката
void fetchData() async {
  try {
    final response = await dio.get(
      'https://example.com/data',
      cancelToken: cancelToken,
    );
    print(response.data);
  } catch (e) {
    if (CancelToken.isCancel(e)) {
      print('Заявката е отменена');
    } else {
      print('Грешка: $e');
    }
  }
}

// Отмяна на заявката
void cancelRequest() {
  cancelToken.cancel('Потребителят е отменил заявката');
}

По този начин, извикването на cancelToken.cancel() ще прекъсне изпълнението на заявката.