Сервер Dropzone ответил с кодом 0 на iOS - PullRequest
0 голосов
/ 06 октября 2018

Несмотря на то, что есть похожие вопросы, мне не удалось разрешить Dropzone «сервер ответил с кодом 0» на iOS.

В настоящее время я использую Dropzone в своем веб-приложении C # MVC для загрузки видеоа также изображение, которое отлично работает в Chrome и Firefox на рабочем столе, а также Chrome на Android, но по какой-то причине оно не будет загружать видео на iOS или просто ответит ошибкой с кодом 0, но все равно загрузит изображение ниless.

Я установил maxAllowedContentLength в файле web.config:

 <security>
  <requestFiltering>
    <requestLimits maxAllowedContentLength="524288000" />
  </requestFiltering>
</security>

, а также указал максимальный размер файла в конфигурации Dropzone, а такжевключите различные типы mimeType для принятых файлов.

<staticContent>
  <remove fileExtension=".mp4" />
  <mimeMap fileExtension=".mp4" mimeType="video/mp4" />
  <remove fileExtension=".flv" />
  <mimeMap fileExtension=".flv" mimeType="video/x-flv" />
  <remove fileExtension=".m3u8" />
  <mimeMap fileExtension=".m3u8" mimeType="application/x-mpegURL" />
  <remove fileExtension=".ts" />
  <mimeMap fileExtension=".ts" mimeType="video/MP2T" />
  <remove fileExtension=".3gp" />
  <mimeMap fileExtension=".3gp" mimeType="video/3gpp" />
  <remove fileExtension=".mov" />
  <mimeMap fileExtension=".mov" mimeType="video/quicktime" />
  <remove fileExtension=".avi" />
  <mimeMap fileExtension=".avi" mimeType="video/x-msvideo" />
  <remove fileExtension=".wmv" />
  <mimeMap fileExtension=".wmv" mimeType="video/x-ms-wmv" />
</staticContent>

Если кто-нибудь сможет решить эту проблему на iOS с помощью safari, любая помощь будет принята с благодарностью!

РЕДАКТИРОВАТЬ:

Additonally Я попытался увеличить время ожидания подключения в IIS 8, и я также добавил executeTimeout = "180" в web.config.

Ответы [ 2 ]

0 голосов
/ 09 октября 2018

После двухдневной борьбы я наконец-то смог решить свою проблему.

Вместо того, чтобы делать случайные снимки в темноте и угадывать возможное решение, я нашел эту статью для отладки iOSв окнах, чтобы я мог видеть, почему видео не загружается или какая ошибка была возвращена.

Я обнаружил, что на iOS переданное расширение файла имеет прописные буквы в запросе xhr, например, my-video.MP4 и вВ моем контроллере оператор if сравнивал расширение файла в нижнем регистре, как показано ниже:

if (fileExtension == ".mp4" || fileExtension == ".mov" || fileExtension == ".avi" ||  fileExtension == ".wmv" || fileExtension == ".flv" || fileExtension == ".3gp")
   {
       //saving files onto the server
   }

Я просто преобразовал расширение файла в нижний регистр, и все, кажется, работает хорошо.Я надеюсь, что это помогает кому-то, имеющему подобную проблему.

0 голосов
/ 06 октября 2018

Эта проблема может иметь несколько причин.Насколько большие файлы вы загружаете?Как долго сервер выполняет скрипт?Какие максимальные размеры файлов разрешено загружать?Я предполагаю, что это будет в основном проблема настроек веб-сервера.

Попробуйте также увеличить время ожидания подключения в IIS: перейдите на свой веб-сайт (т. Е. Веб-сайт по умолчанию) -> Дополнительные параметры -> Время ожидания подключения).

Если это все еще не работает, см. Эту ссылку для некоторых идей: https://github.com/enyo/dropzone/issues/701

...