Посылка Ajax blob (Png) несколько раз зависала? - PullRequest
0 голосов
/ 13 февраля 2019

У меня проблема с отправкой BLG-файла PNG с помощью Ajax на сервер, код работает и правильно отправляет PNG.Однако иногда без какого-либо паттерна он просто останавливается / застревает.код ниже, который я использую для отправки BLOB-объектов.

blobPost: function(url, blob, callback, callbackParam) {
        console.log("blobPost called");
        var fd = new FormData();
        fd.append('fname', 'frame' + Date.now() + '.jpg');
        fd.append('data', blob);
        console.log(blob);
        blobAjax = $.ajax({
            async:true,
            //timeout:10000,//time out after 5 seconds
            //tryCount:0,//counter
            //retryLimit:2,//number of retries before give up
            //crossOrigin:true,//fix localhost issue
            type: "POST",
            enctype: 'multipart/form-data',
            url: url,
            data: fd,
            cache: false,
            contentType: false,
            processData: false,
            success: routing.plainValidation,
            error: routing.BlobxhrErrorCallback,
            success_callback: callback,
            error_callback: routing.plainErrorCallback,
            callbackParam: callbackParam,
            headers: {'Access-Control-Allow-Origin': '*'}

        });

Когда запрос застрял, он вызывает «BlobxhrErrorCallback» с «ошибкой» и ReadyState = 0 и больше ничего.

Я пытался:

  1. отключить кеш
  2. asyn: false и true
  3. Добавить тайм-аут в запрос для сброса запроса, который он отправляет повторнопросьба, но застрял тоже.поэтому у меня было бы много застрявших запросов.
  4. Я пытался прервать запрос и повторно опубликовать его, когда он застрял, снова не сработало
  5. Я попытался onError, чтобы проверить, готов ли он, а затем вернутькак здесь: https://stackoverflow.com/a/13892587/2793459

У меня действительно нет выбора, я пробовал много вещей.

Я использую Firefox, я отключил кеш и разрешил контроль доступа.Есть идеи?

Firefox debug network

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