kendo-angular-upload: событие ошибки не сработало после кода ошибки сервера 500 - PullRequest
2 голосов
/ 30 мая 2019

В клиентской части я использую Angular 7 и пытаюсь загрузить изображение с помощью Kendo:

        <kendo-upload
          [saveUrl]="uploadSaveUrl"
          [removeUrl]="uploadRemoveUrl"
          [restrictions]="uploadRestrictions"
          [multiple]="false"
          [withCredentials]="false"
          (success)="showSavedSuccess()"
          (error)=showSavedFailed($event)
        >

, а в серверной части использую ASP.NET Core.Я использую в основном код, взятый отсюда (обычная версия типа Controller): https://www.telerik.com/forums/file-upload-full-example-with-server-side-code

Когда я пытаюсь это сделать, происходит событие успеха.Однако, если я хочу проверить ошибки, вместо

return Ok(new { count = files.Count, size, filePath });

я использую

return StatusCode(500);

В этом случае событие (error) не запускается иЯ все еще получаю сообщение Uploading... от Кендо.Если я проверяю сеть, я ясно вижу сообщение 500 error.

Я пытался отправить разные ответы от серверной части (ноль, ...), но я получаю одинаковый результат со всеми из них.

Кстати, эта проблема не связана с этой с похожим названием.

Что мне исправить?Должен ли я вернуть определенное значение ошибки из BE или мне нужно обработать модуль Kendo по-другому?Я не нашел этой информации на странице Кендо ... Помощь!

1 Ответ

0 голосов
/ 28 июня 2019

Событие ошибки возникает при сбое операции загрузки или удаления. Это пример .

Код состояния 500 никогда не должен доходить до клиента. Такие исключения должны обрабатываться на стороне сервера .Правильные коды состояния HTTP / ошибки должны быть возвращены с сервера.

Эти являются встроенными основными методами ASP.NET Core для наиболее распространенных здесь кодов состояния, чтобы инициировать событие ошибки компонента загрузки.В качестве альтернативы, Angular Interceptor может использоваться для настройки всей связи клиент-сервер.Пользовательский ответ об ошибке может быть отправлен из пользовательского компонента-перехватчика. Пример .

Источник: служба поддержки Telerik.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...