错误信息如下
[VERBOSE-2:ui_dart_state.cc(157)] Unhandled Exception: DioError [DioErrorType.DEFAULT]: Error on line 1, column 24: Invalid media type: expected "=".
╷
1 │ application/json; utf-8
│ ^
╵
#0 DioMixin._dispatchRequest (package:dio/src/dio.dart:963:7)
<asynchronous suspension>
#1 DioMixin._request._interceptorWrapper.<anonymous closure>.<anonymous closure>.<anonymous closure> (package:dio/src/dio.dart:849:37)
#2 DioMixin.checkIfNeedEnqueue (package:dio/src/dio.dart:1117:22)
#3 DioMixin._request._interceptorWrapper.<anonymous closure>.<anonymous closure> (package:dio/src/dio.dart:846:22)
#4 new Future.<anonymous closure> (dart:async/future.dart:176:37)
#5 _rootRun (dart:async/zone.dart:1122:38)
#6 _CustomZone.run (dart:async/zone.dart:1023:19)
#7 _CustomZone.runGuarded (dart:async/zone.dart:925:7)
#8 _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:965:23)
#9 _rootRun (dart:async/zone.dart:1126:<…>
解决办法 设置下请求返回的数据格式即可。这个错误大概就是请求返回的格式默认解析不了。我们这里在header里面设置下 responseType:ResponseType.plain
FormData formData ;
Options options =Options(
responseType:ResponseType.plain
);
Response response;
Dio dio = Dio();
response =await dio.post('',data: await formData,options:options );
if(response.statusCode == 200){
print(response);
}else{
print(response);
}
网友评论