widgetutils.dart 934 B

1234567891011121314151617181920212223242526272829303132
  1. import 'dart:io';
  2. import 'package:dio/dio.dart';
  3. import 'package:flutter/material.dart';
  4. import 'package:mvvm_flutter/helper/toast.dart';
  5. dispatchFailure(BuildContext context, dynamic e) {
  6. var message = e.toString();
  7. if (e is DioError) {
  8. final response = e.response;
  9. if (response?.statusCode == 401) {
  10. message = "account or password error ";
  11. } else if (403 == response?.statusCode) {
  12. message = "forbidden";
  13. } else if (404 == response?.statusCode) {
  14. message = "page not found";
  15. } else if (500 == response?.statusCode) {
  16. message = "Server internal error";
  17. } else if (503 == response?.statusCode) {
  18. message = "Server Updating";
  19. } else if (e.error is SocketException) {
  20. message = "network cannot use";
  21. } else {
  22. message = "Oops!!";
  23. }
  24. }
  25. print("error :" + message);
  26. if (context != null) {
  27. Toast.show(message, context, type: Toast.ERROR);
  28. }
  29. }