Меню

Script7002 xmlhttprequest сетевая ошибка 0x2efd не удалось завершить действие ошибка 00002efd

Вопрос:

У меня есть запрос ajax POST, который может занимать от 2 секунд до 30 + минут. Запрос на отправку происходит в результате нажатия кнопки

Если запрос занимает менее минуты или двух, он возвращается с ответом, и все работает нормально. Однако, если запрос занимает более двух минут, он возвращается с “Ошибка сети: XMLHttpRequest: Ошибка сети 0x2eff, не удалось завершить операцию из-за ошибки 00002eff”.

Конечно, он отлично работает Firefox и Chrome.

Приложение развертывается на сервере JBoss с включенным SSL. Архитектура здесь заключается в том, что у нас есть балансировщик нагрузки, который направляет запрос на два сервера Jboss.

Internet Explorer

Версия: 11.0.9600.180971C
Обновление: 11.0.25

Я пробовал следующее, но тщетно

1) ajax set cache to false – не работает

2) Изменены настройки реестра в соответствии с https://support.microsoft.com/en-us/kb/813827 – не работает, вот где это запутывает, thissuggests это не вещь IE, но в то же время это работает на chrome и ff, поэтому это не серверная вещь

3) Установите тайм-аут ajax на 0 – не работает
4) Добавлен e.preventDefault после $(‘# mdlSgn’). Click (function() {as jQuery Запросы Ajax отменяются без отправки

$('#mdlSgn').click(function() {
$('#cnfdsgl').modal('hide');

$.ajax({
url: ajaxUrl,
type: "POST",
data: JSON.stringify(input),
contentType: "application/json; charset=UTF-8",
dataType: "json",
success: function(data) {
/// some logic


},
error : function(jqXhr, textStatus, errorThrown) {
/// some logic
}
});

//some other logic
});

Ответ №1

может занимать от 2 до 30 минут

Я предполагаю, что это связано с большим объемом передаваемых данных.

У меня есть большой файловый загрузчик, который обрабатывает файлы размером 20 ГБ + и может длиться несколько часов.

По моему опыту – загрузка больших данных с помощью одного запроса ajax может вызвать странные сбои браузера (например, мой браузер Chrome сбой примерно в 20% тестов загрузки).

Самый надежный способ, который я нашел, – разделить данные на куски 1 МБ и отправить их последовательно на сервер с помощью отдельных запросов ajax.

Ответ №2

Мы проводим несколько дней в поисках причины этой проблемы!

  • В консоли: SCRIPT7002: XMLHttpRequest: Сетевая ошибка 0x2eff. Не удалось завершить операцию из-за ошибки 00002eff.
  • На вкладке сети IE/Edge мы видим неудавшийся запрос как “Ожидание…”
  • XmlHTTPRequest/JQuery возвращает ошибку 404 на клиенте, но сервер успешно возвратил ответ 200.

У нас была эта проблема только при использовании всего этого:

  • HTTP/2
  • POST-запросы
  • Windows 10
  • IE или Edge

По-видимому, это ошибка Windows 10 в стеке HTTP, которая теперь решается в Windows 10 версии 1803 (апрель 2018 года). Поэтому обычно эта проблема исчезает со временем для людей/компаний, использующих автоматические обновления Windows. Используется Windows 10 версии WorldWide

Мы проверили это на более старой и новой версии Windows 10, и она действительно решена.

Некоторое временное решение может быть:

  • отключите HTTP/2 для IE и Edge и используйте HTTPS (на стороне сервера).
  • используйте GET (если возможно)
  • PUT также имеет эту проблему?
  • сделать несколько попыток
  • принять, что пользователи IE/Edge будут наказаны 😉

Ответ №3

В моем случае это был пользовательский код ответа (3020), возвращенный с сервера. Переключил его на 200 и изменил логику клиента SPA, это решило проблему.

I have a single page html and Angularjs file.

App.js

angular
.module('vod', [])
.controller('moviesController', ['$http', function ($http) {
    var self = this;
    self.movies = [];
    $http.get('http://localhost:8080/movies/').then(function (response) {
        self.movies = response.data;
    }, function (errResponse) {
        console.error('Error while fetching movies');
    });
}]);

HTML

<!DOCTYPE html>
<html>
    <head>
        <title>Angular</title>
        <script src="angular.min.js"></script>
        <script src="app.js"></script>
    </head>
    <body ng-controller="moviesController as ctrl"
          ng-app="vod">
        <div ng-repeat="movie in ctrl.movies">
            <span ng-bind="movie.title"></span>
        </div>
    </body>
</html>

It works well on Chrome producing the movie titles but gives the errors
SCRIPT7002: XMLHttpRequest: Network Error 0x2, The system cannot find the file specified
and
SCRIPT7002: XMLHttpRequest: Network Error 0x2efd, Could not complete the operation due to error 00002efd. on Microsoft Edge.

I have a single page html and Angularjs file.

App.js

angular
.module('vod', [])
.controller('moviesController', ['$http', function ($http) {
    var self = this;
    self.movies = [];
    $http.get('http://localhost:8080/movies/').then(function (response) {
        self.movies = response.data;
    }, function (errResponse) {
        console.error('Error while fetching movies');
    });
}]);

HTML

<!DOCTYPE html>
<html>
    <head>
        <title>Angular</title>
        <script src="angular.min.js"></script>
        <script src="app.js"></script>
    </head>
    <body ng-controller="moviesController as ctrl"
          ng-app="vod">
        <div ng-repeat="movie in ctrl.movies">
            <span ng-bind="movie.title"></span>
        </div>
    </body>
</html>

It works well on Chrome producing the movie titles but gives the errors
SCRIPT7002: XMLHttpRequest: Network Error 0x2, The system cannot find the file specified
and
SCRIPT7002: XMLHttpRequest: Network Error 0x2efd, Could not complete the operation due to error 00002efd. on Microsoft Edge.

I have problem with WinJS.xhr when developing a Windows 8 Metro application in JavaScript.

WinJS.xhr({ url: "http://www.seznam.cz"});

When above code is executed, I see in log:

SCRIPT7002: XMLHttpRequest: Network Error 0x2efd, Could not complete
the operation due to error 00002efd.

I have enabled «Internet (Client)» capability in manifest.

Maybe the problem is because I am behind proxy and using VPN, but I can access internet using Google Chrome (I just need to authorize, otherwise HTTP Status 407 — proxy authorization needed).

How can I fix it?

[EDIT]
So I found that it is probably related to the VPN I have to use (Cisco VPN Client). When I disable the VPN, even when I am behind the proxy (I use the LAN, with VPN I use WiFi), the request works. Maybe it is only Cisco VPN related. I had to modify registry as it is described here http://verbalprocessor.com/2012/09/17/windows-8-and-cisco-vpn-client/

Also interesting is that a few Metro apps work (maps) and some do not work (windows store) when I am behind proxy.

Just a notice: I have explored Windows.Networking.Connectivity and in both cases (with/without VPN) I get NetworkConnectivityLevel == «Local Access» (because I am behind the proxy probably).

Hi ,all

I am beginner for windows 8 app development.

I created simple project on domain name called www.aaa.com and also hosted web services on same domain. at that time i was able to access web services on my application code using AJAX. Then i created same project on another domain called www.bbb.com then
i tried to access wcf services from www.aaa.com domain. at that time my javaScript console is throwing this error «SCRIPT7002: XMLHttpRequest: Network Error 0x2efd, Could not complete the operation due to error 00002efd.
File: default.html«. I tried some thing on both end on web services project as well as windows 8 app.

AT app side in package.appxmanifest file i added below code.

<Capabilities>
    <Capability Name=»privateNetworkClientServer» />
    <Capability Name=»internetClient» />
  </Capabilities>

AT web services side in web.config file i added following settings.

<serviceHostingEnvironment aspNetCompatibilityEnabled=»true»
        multipleSiteBindingsEnabled=»true» />

    <standardEndpoints>
      <webScriptEndpoint>
        <standardEndpoint name=»» crossDomainScriptAccessEnabled=»true» />
      </webScriptEndpoint>
    </standardEndpoints>

but above all diagnostics are not working for me.

and one more thing at www.bbb.com domain in sample android app while i am trying to consume my wcf services it is working fine. the problem is specifically for windows 8 app only.

Here is sample code which i had written in default.html file

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <title>DemoWebService</title>

    <!-- DemoWebService references -->
    <script src="/js/default.js"></script>
    


    <script>

        var personNameVar = "Hardik";
        var dataIn = '{' + '"personName":"' + personNameVar + '"}';
        $.ajax({
            url: "http://SomeIP:SomePort/Service1.svc/HelloWorld",
            type: "POST",
            contentType: "application/json; charset=utf-8",
            data: dataIn,
            dataType: "json",
            success: function (data) {
                var object = JSON.parse(data.d);
                
                if (object.Error == '') {
                    $('body').html(object.Response);
                }
            },
            error: function (error) {
                $('body').html(error);
            }
        });


       
</script>

</head>
<body>
    
</body>
</html>

so is there any help. I am eagerly waiting for it.

P.S I am accessing www.aaa.com web services using VPN.

Thanks in advance,

Hardik

Running on Windows 10, Microsoft Edge. I have an app installed locally on my machine in IIS (10.119.103.10) which is trying to make requests to another machine on the network (10.119.103.2) which is setup to use CORS.

This all works in chrome and internet explorer … here is a test case

function LOG(message) {
        var el = document.createElement('pre');
        el.textContent = message;
        output.appendChild(el);
}
function xhrtest(url) {
        var XHR = new XMLHttpRequest();
        LOG("OPEN " + url);
        XHR.open("GET", url, true);
        XHR.onreadystatechange = function(e) {
                LOG('READY ' + XHR.readyState + ' STATUS ' + XHR.status + ' ' + XHR.statusText + ' TYPE ' + XHR.responseType);
                LOG(XHR.response);
        }
        LOG("SEND");
        XHR.send();
}
<button onclick="xhrtest('http://10.119.103.2/~adf/RMC2/trunk/server/?r=get')">XHR TEST</button>
<hr/>
<div id="output"></div>

In Microsoft Edge however, I get the following error

SCRIPT7002: XMLHttpRequest: Network Error 0x2efd, Could not complete
the operation due to error 00002efd.

The client (XMLHttpRequest) isn’t even attempting to connect to the server, it bails immediately. The test case producing this output:-

OPEN http://10.119.103.2/~adf/RMC2/trunk/server/?r=get 
SEND 
READY 4 STATUS 0  TYPE

I suspect this is something to do with private networks though really I have no idea, nor any idea how to resolve it.

Running on Windows 10, Microsoft Edge. I have an app installed locally on my machine in IIS (10.119.103.10) which is trying to make requests to another machine on the network (10.119.103.2) which is setup to use CORS.

This all works in chrome and internet explorer … here is a test case

function LOG(message) {
        var el = document.createElement('pre');
        el.textContent = message;
        output.appendChild(el);
}
function xhrtest(url) {
        var XHR = new XMLHttpRequest();
        LOG("OPEN " + url);
        XHR.open("GET", url, true);
        XHR.onreadystatechange = function(e) {
                LOG('READY ' + XHR.readyState + ' STATUS ' + XHR.status + ' ' + XHR.statusText + ' TYPE ' + XHR.responseType);
                LOG(XHR.response);
        }
        LOG("SEND");
        XHR.send();
}
<button onclick="xhrtest('http://10.119.103.2/~adf/RMC2/trunk/server/?r=get')">XHR TEST</button>
<hr/>
<div id="output"></div>

In Microsoft Edge however, I get the following error

SCRIPT7002: XMLHttpRequest: Network Error 0x2efd, Could not complete
the operation due to error 00002efd.

The client (XMLHttpRequest) isn’t even attempting to connect to the server, it bails immediately. The test case producing this output:-

OPEN http://10.119.103.2/~adf/RMC2/trunk/server/?r=get 
SEND 
READY 4 STATUS 0  TYPE

I suspect this is something to do with private networks though really I have no idea, nor any idea how to resolve it.

Информация о системе:

На вашем ПК работает:  

специальное предложение

0x2efd часто может появляться из-за неправильно настроенных параметров системы или из-за нарушений в реестре Windows. Эту ошибку относительно быстро и легко исправить, если использовать PC Repair, настроенную на решение всех распространенных проблем с реестром.

  • Название ошибки: 0x2efd
  • Совместимо с: Windows 10, 11, 8, 7, Vista, XP
  • 0x2efd появляется и начинает нарушать окно активной программы;
  • 0x2efd появляется на экране;
  • Появляется сообщение ‘Обнаружена проблема, и Windows была выключена, чтобы предотвратить повреждение компьютера. Похоже, что проблема вызвана следующим файлом…’;
  • Компьютер пользователя перестает работать, выдавая ошибку 0x2efd при запуске программы;
  • Windows работает плохо, медленно реагируя на команды;
  • Компьютер пользователя часто зависает

0x2efd сообщения об ошибке могут появляться из-за засорения реестра Windows и ошибочных записей несуществующих программ, поскольку пользователь обычно неправильно удаляет программное обеспечение. Другими распространенными причинами являются неправильный ввод данных, отсутствие файлов, которые были случайно удалены из реестра, что вызывает проблемы в работе системы.

  1. 1. Скачать PC Repair.
  2. 2. Установить и запустить программу.
  3. 3. Нажмите Scan Now для обнаружения ошибок и различных отклонений от оптимального уровня.
  4. 4. Нажмите Repair All для устранения каждой проблемы.


Эта страница доступна на других языках:
English |
Deutsch |
Español |
Italiano |
Français |
Indonesia |
Nederlands |
Nynorsk |
Português |
Українська |
Türkçe |
Malay |
Dansk |
Polski |
Română |
Suomi |
Svenska |
Tiếng việt |
Čeština |
العربية |
ไทย |
日本語 |
简体中文 |
한국어

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Script1002 синтаксическая ошибка internet explorer
  • Script hook v для gta 5 ошибка при запуске