I've been working on this problem for a few days and reaching out on this forum since I feel like I've exhausted my options. I have a form hosted on a Drupal 7 website and need to submit the form values to an external url. The form uses a POST request over the HTTPS protocol via jQuery.AJAX
SCRIPT7002: XMLHttpRequest: Network Error 0x2ef3, Could not complete the operation due to error 00002ef3
I've tried the following:
adding contentType:
// causes all of the jQuery callbacks to error out "application/json; charset=utf-8",
attempting an Ajax GET call before the actual POST (as suggested on another SO thread)
added header( 'Content-Type: application/json; charset=utf-8' );
to the request
set crossDomain: true
The appropriate CORS headers have been added and the form code is pasted below:
$.ajax({ url: "[URL]", //the page to receive the form data crossDomain: true, type: "POST", data: dataString, //posting to API dataType: "json", //the data type the function should expect back from the server success: function(data) { if (data.response_status == "1") { //error for at least 1 field //display error message } else { //display thank you label next to input } } else { //All form fields completed successfully! Redirect user to Thank you confirmation page } }, error: function(jqXHR, textStatus, errorThrown) { alert("there is an error!"); console.log("in error section"); console.log("jqXHR: " + jqXHR); console.log("jqXHR.responseText: " + jqXHR.responseText); console.log("textStatus: " + textStatus); console.log("errorThrown: " + errorThrown); data = $.parseJSON(jqXHR.responseText); console.log("parseJSON data: " + data); } }); }); });
I've read SCRIPT7002: XMLHttpRequest: Network Error 0x2ef3, Could not complete the operation due to error 00002ef3
Any guidance would be helpful! THANKS
I was seeing this error randomly with IE 8+9+10+11 Ajax calls. All other browsers did not have the problem.
It suppose there was a race-condition between KeepAlive connections. I am using Apache 2.4.7.
With the Apache 2 default settings in /etc/apache2/apache2.conf I was able to reproduce the error about every tenth Ajax call:
KeepAlive On KeepAliveTimeout 5
Solution: Either setting
KeepAlive off
or
KeepAliveTimeout 1
solved the problem for me. I recommend anyone experiencing the 0x2ef3-Network error to fist set KeepAlive off on the server. If the error is gone, switch it on again and test with the values of KeepAliveTimeout. They can also be set to ms.
There is also a way to disable KeepAlive only for Internet Explorer.
The OP provided a WireShark capture showing that the server requested a certificate using the HTTPS CertificateRequest
message and the client then immediately FIN
d the connection.
After configuring the server not to request a client certificate, the problem went away.
Using Fiddler also would make the problem disappear because, unless you configure it to do so, Fiddler will never request a client certificate from the browser.
I'm wondering if only the affected client machine had a matching certificate and/or whether the withCredentials
flag on the CORS XHR request is relevant in this scenario.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With