@@ -27,11 +27,16 @@ class ParseDioClient extends ParseClient {
2727 path,
2828 options: _Options (headers: options? .headers),
2929 );
30+
3031 return ParseNetworkResponse (
31- data: dioResponse.data! , statusCode: dioResponse.statusCode! );
32+ data: dioResponse.data! ,
33+ statusCode: dioResponse.statusCode! ,
34+ );
3235 } on dio.DioError catch (error) {
3336 return ParseNetworkResponse (
34- data: error.response? .data, statusCode: error.response! .statusCode! );
37+ data: error.response? .data ?? _fallbackErrorData,
38+ statusCode: error.response? .statusCode ?? ParseError .otherCause,
39+ );
3540 }
3641 }
3742
@@ -51,12 +56,15 @@ class ParseDioClient extends ParseClient {
5156 headers: options? .headers, responseType: dio.ResponseType .bytes),
5257 );
5358 return ParseNetworkByteResponse (
54- bytes: dioResponse.data, statusCode: dioResponse.statusCode! );
59+ bytes: dioResponse.data,
60+ statusCode: dioResponse.statusCode! ,
61+ );
5562 } on dio.DioError catch (error) {
5663 if (error.response != null ) {
5764 return ParseNetworkByteResponse (
58- data: error.response? .data,
59- statusCode: error.response! .statusCode! );
65+ data: error.response? .data ?? _fallbackErrorData,
66+ statusCode: error.response? .statusCode ?? ParseError .otherCause,
67+ );
6068 } else {
6169 return _getOtherCaseErrorForParseNetworkResponse (error.error);
6270 }
@@ -72,11 +80,16 @@ class ParseDioClient extends ParseClient {
7280 data: data,
7381 options: _Options (headers: options? .headers),
7482 );
83+
7584 return ParseNetworkResponse (
76- data: dioResponse.data! , statusCode: dioResponse.statusCode! );
85+ data: dioResponse.data! ,
86+ statusCode: dioResponse.statusCode! ,
87+ );
7788 } on dio.DioError catch (error) {
7889 return ParseNetworkResponse (
79- data: error.response? .data, statusCode: error.response! .statusCode! );
90+ data: error.response? .data ?? _fallbackErrorData,
91+ statusCode: error.response? .statusCode ?? ParseError .otherCause,
92+ );
8093 }
8194 }
8295
@@ -89,11 +102,16 @@ class ParseDioClient extends ParseClient {
89102 data: data,
90103 options: _Options (headers: options? .headers),
91104 );
105+
92106 return ParseNetworkResponse (
93- data: dioResponse.data! , statusCode: dioResponse.statusCode! );
107+ data: dioResponse.data! ,
108+ statusCode: dioResponse.statusCode! ,
109+ );
94110 } on dio.DioError catch (error) {
95111 return ParseNetworkResponse (
96- data: error.response? .data, statusCode: error.response! .statusCode! );
112+ data: error.response? .data ?? _fallbackErrorData,
113+ statusCode: error.response? .statusCode ?? ParseError .otherCause,
114+ );
97115 }
98116 }
99117
@@ -111,13 +129,17 @@ class ParseDioClient extends ParseClient {
111129 options: _Options (headers: options? .headers),
112130 onSendProgress: onSendProgress,
113131 );
132+
114133 return ParseNetworkResponse (
115- data: dioResponse.data! , statusCode: dioResponse.statusCode! );
134+ data: dioResponse.data! ,
135+ statusCode: dioResponse.statusCode! ,
136+ );
116137 } on dio.DioError catch (error) {
117138 if (error.response != null ) {
118139 return ParseNetworkResponse (
119- data: error.response? .data,
120- statusCode: error.response! .statusCode! );
140+ data: error.response? .data ?? _fallbackErrorData,
141+ statusCode: error.response? .statusCode ?? ParseError .otherCause,
142+ );
121143 } else {
122144 return _getOtherCaseErrorForParseNetworkResponse (error.error);
123145 }
@@ -138,13 +160,20 @@ class ParseDioClient extends ParseClient {
138160 path,
139161 options: _Options (headers: options? .headers),
140162 );
163+
141164 return ParseNetworkResponse (
142- data: dioResponse.data! , statusCode: dioResponse.statusCode! );
165+ data: dioResponse.data! ,
166+ statusCode: dioResponse.statusCode! ,
167+ );
143168 } on dio.DioError catch (error) {
144169 return ParseNetworkResponse (
145- data: error.response? .data, statusCode: error.response! .statusCode! );
170+ data: error.response? .data ?? _fallbackErrorData,
171+ statusCode: error.response? .statusCode ?? ParseError .otherCause,
172+ );
146173 }
147174 }
175+
176+ String get _fallbackErrorData => '{"$keyError ":"NetworkError"}' ;
148177}
149178
150179/// Creates a custom version of HTTP Client that has Parse Data Preset
0 commit comments