Skip to content

Commit 08c527e

Browse files
authored
Merge pull request #664 from code16/fix-upload-error
Fix upload error handling
2 parents c819573 + f3c16b3 commit 08c527e

File tree

1 file changed

+11
-7
lines changed
  • resources/js/form/components/fields/upload

1 file changed

+11
-7
lines changed

resources/js/form/components/fields/upload/Upload.vue

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@
100100
endpoint: route('code16.sharp.api.form.upload'),
101101
fieldName: 'file',
102102
headers: {
103-
'accept': 'application/json',
103+
'Accept': 'application/json',
104104
'X-CSRF-TOKEN': getCsrfToken(),
105105
},
106106
})
@@ -176,13 +176,17 @@
176176
uppyFile.value = uppy.getFile(file.id);
177177
console.log('upload-success', JSON.parse(JSON.stringify(uppyFile.value)));
178178
})
179-
.on('upload-error', (file, error, response) => {
180-
if(response) {
181-
if(response.status === 422) {
182-
emit('error', (response.body.errors as Record<string, string[]>).file?.join(', '), file.data);
179+
.on('upload-error', (file, error, request?: XMLHttpRequest) => {
180+
if(request) {
181+
const data = request.getResponseHeader('Content-Type')?.includes('/json')
182+
? JSON.parse(request.response)
183+
: request.response;
184+
const status = request.status;
185+
if(status === 422) {
186+
emit('error', data.errors.file?.join(', '), file.data);
183187
} else {
184-
const message = getErrorMessage({ data: response.body, status: response.status });
185-
handleErrorAlert({ data: response.body, status: response.status, method: 'post' });
188+
const message = getErrorMessage({ data, status });
189+
handleErrorAlert({ data, status, method: 'post' });
186190
emit('error', message, file.data);
187191
}
188192
} else {

0 commit comments

Comments
 (0)