Skip to content

Commit e1a8858

Browse files
v-rudkovskiyr-brown
authored andcommitted
add error handling
1 parent 2fc45dd commit e1a8858

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

src/services/Service.js

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,18 @@ export default class Service {
161161

162162
return Service.getAxiosInstance()(request)
163163
.then((response) => {
164+
response.infos = Service.getInfo(response, []);
165+
166+
const errors = response.infos.filter(({ type }) => type === 'ERROR');
167+
168+
if (errors.length) {
169+
const error = new Error(errors[0].value);
170+
error.config = response.config;
171+
error.request = response.request;
172+
error.response = response;
173+
throw error;
174+
}
175+
164176
httpXHR = response;
165177
return response;
166178
})
@@ -183,7 +195,9 @@ export default class Service {
183195
const { data } = e.response;
184196

185197
if (data) {
186-
const info = Service.getInfo(e.response, [])[0] || {};
198+
error.infos = Service.getInfo(e.response, []);
199+
200+
const [info = {}] = error.infos.filter(({ type }) => type === 'ERROR');
187201
error.message = info.value || 'Unknown';
188202
}
189203

0 commit comments

Comments
 (0)