widgetutils.dart 928 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 = "账号或密码错误";
  11. } else if (403 == response?.statusCode) {
  12. message = "禁止访问";
  13. } else if (404 == response?.statusCode) {
  14. message = "链接错误";
  15. } else if (500 == response?.statusCode) {
  16. message = "服务器内部错误";
  17. } else if (503 == response?.statusCode) {
  18. message = "服务器升级中";
  19. } else if (e.error is SocketException) {
  20. message = "网络未连接";
  21. } else {
  22. message = "Oops!!";
  23. }
  24. }
  25. print("出错了:"+message);
  26. if(context!=null) {
  27. Toast.show(message, context, type: Toast.ERROR);
  28. }
  29. }