Skip to main content

Bug Tracker

Side navigation

#12790 closed bug (cantfix)

Opened October 25, 2012 11:47PM UTC

Closed November 26, 2012 09:48PM UTC

Last modified November 01, 2013 09:25PM UTC

AJAX Post on IE10 / Windows 8

Reported by: Tigroo Owned by: Tigroo
Priority: undecided Milestone: None
Component: unfiled Version: 1.8.2
Keywords: Cc: jaubourg
Blocked by: Blocking:
Description

AJAX Post on IE10 / Windows 8 is not working.

Smaple JS:

$.ajax({
  type: "POST",
  url: "test.php",
  data: { test: "John" }
}).done(function( msg ) {
  alert( "output: " + msg );
});

Sample test.php

<?php
echo "I GOT IIIITTTT :  ".$_POST['test'];
?>
Attachments (0)
Change History (37)

Changed October 26, 2012 12:27PM UTC by Tigroo comment:1

More precisions : It seems like all data arguments are not passing. If switch the compatibility mode from IE10 to IE9, it works.

Changed October 26, 2012 01:20PM UTC by mikesherov comment:2

cc: → jaubourg

Jaubourg, could you kindly take a look at this. IE10 was just released, so I want to be extra cautious with this bug. Thanks!

Changed October 26, 2012 01:49PM UTC by jaubourg comment:3

I'd gladly look with a jsfiddle demonstrating the issue :)

Changed October 30, 2012 10:44PM UTC by dmethvin comment:4

owner: → Tigroo
status: newpending

@Tigroo, please provide a test case that demonstrates the problem, preferably at jsfiddle.net or jsbin.com.

Changed November 01, 2012 07:23PM UTC by jonesjunior3 comment:5

Changed November 01, 2012 09:37PM UTC by anonymous comment:6

same issue here. :/

Changed November 02, 2012 03:39PM UTC by anonymous comment:7

Having the same issue on Windows 8 but with Chrome too... could this be an underlying OS issue rather than IE10?

Changed November 06, 2012 08:54AM UTC by anonymous comment:8

Any update on this issue?

Do you need any further information?

Changed November 06, 2012 09:08AM UTC by jaubourg comment:9

As said above, a jsfiddle, or jsbin, demonstrating the issue.

Changed November 06, 2012 11:01AM UTC by anonymous comment:10

http://jsfiddle.net/L6bJ2/6/

you have to be using ie10 on windows 8 for it not to work

Changed November 06, 2012 01:28PM UTC by dmethvin comment:11

resolution: → worksforme
status: pendingclosed

I am running Windows 8 with IE10 10.0.9200.16384 and your example works fine for me, it echoes back the data. This simpler version also works: http://jsfiddle.net/RebaT/5/show

Perhaps Microsoft slipstreamed in some last-minute patch to fix it. If you're still experiencing problems, make sure you have run Windows Update. Also be sure there are no toolbars or other add-ins installed.

Changed November 06, 2012 03:37PM UTC by anonymous comment:12

Hi I have checked windows update, I have also removed ie 10 and reinstalled it. the request body is always empty.

Do you have any other suggestions?

Changed November 06, 2012 04:08PM UTC by dmethvin comment:13

Try creating a simple example with bare XMLHttpRequest and a request body to see if that works. That way you can determine whether jQuery is involved at all.

Changed November 13, 2012 10:46PM UTC by anonymous comment:14

We recently ran into this as well on a 32-bit machine that had just upgraded from Windows 7. Oddly, the behaviour couldn't be reproduced while the metro version of IE10.

The response body was simply empty (triggering our automated error handling).

Resetting to default IE10's settings resolved the issue, but it's worrying if this is a common scenario in the field.

Changed November 13, 2012 11:08PM UTC by dmethvin comment:15

Resetting to default IE10's settings resolved the issue

What was the difference between the previous settings and the default settings?

It doesn't sound like this is a jQuery problem, but if anyone can contribute more than a "me too" response it would be welcome. As I said above, a non-jQuery repro case would be helpful too.

Changed November 14, 2012 05:29PM UTC by Scootin159 comment:16

I too had this same issue (clean Windows 8 install), and restoring the default settings in IE 10 resolved the issue for me.

I'm not aware of any settings I had changed from the baseline install (I never use IE other than for web testing, so I try to leave it as "default" as possible).

Changed November 14, 2012 06:01PM UTC by Scootin159 comment:17

This may or may not be related information:

Environment: Fresh windows 8 install, restored IE 10 defaults, all updates

Website is available at 2 URL's, AJAX call is hardcoded to go to "URL 1" at both URL's

Test Case:

  • Open browser to URL 1, ajax works
  • Modify URL in address bar to URL 2, ajax works
  • Close browser window
  • Reopen, go to URL 2, ajax does not work

Given this, I'm wondering if this may be an issue with IE 10 caching a listing of "allowed URL's" per-tab, and not allowing you to access URL's outside of that via AJAX.

Added information, if and only if AJAX fails, I get the following error in the IE 10 developer tools console:

SEC7118: XMLHttpRequest for <<url 1>> required Cross Origin Resource Sharing (CORS).

SEC7120: Origin <<url 2>> not found in Access-Control-Allow-Origin header.

SCRIPT7002: XMLHttpRequest: Network Error 0x80070005, Access is denied.

Changed November 16, 2012 08:54AM UTC by werner@brutaldev.com comment:18

The sample above most definitely does not work in IE10 v10.0.9200.16438 on Windows 7.

The POST data does not get sent to the server which can easily be confirmed with a Fiddler/Charles trace. Links to http://fiddle.jshell.net/_display/test.php removed because it thinks I' spamming.

The above code sample using Chrome (running in jsFiddle with jQuery 1.8.2 and catching the request in Fiddler):


''POST [[test.php link]] HTTP/1.1

Host: fiddle.jshell.net

Connection: keep-alive

Content-Length: 9

Origin: http://fiddle.jshell.net

X-Requested-With: XMLHttpRequest

User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11

Content-Type: application/x-www-form-urlencoded; charset=UTF-8

Accept: */*

Referer: [[removed]]

Accept-Encoding: gzip,deflate,sdch

Accept-Language: en-US,en;q=0.8,en-ZA;q=0.6

Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

test=John''


The POST data is clearly visible. Using the same code but running in IE10:


''POST [[test.php link]] HTTP/1.1

Accept: */*

Content-Type: application/x-www-form-urlencoded; charset=UTF-8

X-Requested-With: XMLHttpRequest

Referer: [[removed]]

Accept-Language: en-ZA

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)

Host: fiddle.jshell.net

Content-Length: 0

DNT: 1

Connection: Keep-Alive

Pragma: no-cache''


No POST data is in the request. Just for good measure I ran the same test in IE10 but the RTM in Windows 8. Desktop works correctly but it appears it's running in compatibility mode:


POST [[test.php link]] HTTP/1.1

Accept: */*

Content-Type: application/x-www-form-urlencoded; charset=UTF-8

X-Requested-With: XMLHttpRequest

Referer: [[removed]]

Accept-Language: en-us

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.2; Trident/6.0; Touch; .NET4.0E; .NET4.0C; Tablet PC 2.0)

Host: fiddle.jshell.net

Content-Length: 9

DNT: 1

Connection: Keep-Alive

Pragma: no-cache

test=John


I couldn't get the Fiddler loopback working in IE10 Metro so my testing stopped there...

Changed November 16, 2012 01:31PM UTC by dmethvin comment:19

Does the same problem happen when using a bare XHR? In other words, is this a jQuery problem, or is it an IE10 problem?

Changed November 17, 2012 04:43PM UTC by anonymous comment:20

I too have same problem

works in all browser expect IE10 Release preview for Windows 7 - 32 bit

Changed November 19, 2012 02:07PM UTC by werner@brutaldev.com comment:21

OK, we can write this off as an IE10 in Windows 7 bug. Standard XHR does not work either when POSTing in Win7-IE10:

var xmlhttp=new XMLHttpRequest();
xmlhttp.open("POST","test.php",true);
xmlhttp.send(JSON.stringify({ test: "John" }));

The above code still has no POST data in the body when using IE10 (async or not). This is only an issue on the desktop in Windows 7. IE10 in Windows 8 is working correctly. MS really dropped the ball here...

Changed November 19, 2012 07:46PM UTC by dmethvin comment:22

Thanks @werner! IE10 on Windows 7 is still a preview, not a release. If it isn't happening on Windows 8 anymore I suspect Microsoft just needs to back-port some patches that haven't landed in the Windows 7 version yet. In any case it doesn't sound like something jQuery can or should fix or work around, since it seems like a fix should arrive shortly.

Changed November 20, 2012 03:24PM UTC by dmethvin comment:23

#12925 is a duplicate of this ticket.

Changed November 20, 2012 09:45PM UTC by nicholas@pdsys.org comment:24

That basic XHR example also fails in Windows 8, IE10 desktop mode. Looks like an MS issue. What a mess.

Changed November 21, 2012 12:02AM UTC by ericlaw (ex-msft) comment:25

If you want to get Fiddler working in Metro, follow these steps: http://www.fiddler2.com/r/?win8el

Important: If you have "Free Download Manager" or a similar add-on installed, it is known to cause this problem with IE10 (even when disabled). The issue is that Free Download Manager has an incomplete thunk of some URLMon interfaces, and this interferes with POST uploads.

Changed November 26, 2012 09:46PM UTC by dmethvin comment:26

resolution: worksforme
status: closedreopened

Changed November 26, 2012 09:48PM UTC by dmethvin comment:27

resolution: → cantfix
status: reopenedclosed

This appears to be a widespread problem with POST requests on IE10, one that we do not control, so there is **no need to post further feedback** in this ticket. Here is the Microsoft ticket for the problem; note that you will need to create a login to view:

http://connect.microsoft.com/IE/feedback/details/771016

Changed March 29, 2013 08:59AM UTC by anonymous comment:28

I faced the same problem but it was caused by HttpWatch plugin in IE10. See release notes http://www.httpwatch.com/download/versionhistory/ (Version 8.5.35 - 28 Mar 2013 )

Changed June 07, 2013 01:20AM UTC by brettryan comment:29

The MS connect page no longer exists, does anyone have any information if Microsoft are actually addressing this?

Changed July 04, 2013 02:45PM UTC by anonymous comment:30

in<head></head>

里添加

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" >

Changed August 05, 2013 12:51AM UTC by anonymous comment:31

This will work on compatibility mode of IE10.

Changed August 06, 2013 03:51PM UTC by robson_douglas@hotmail.com comment:32

I found this error and after very hours and some coffees, I discover the reason for this error. Windows 8 pre-installed version don't have permission to use some resource from HMLHTTPRequest.

The user must run this command on 'execute program': gpupdate /force

Changed August 15, 2013 05:38PM UTC by anonymous comment:33

yangzh@glodon.com

close httpwatch

Changed September 05, 2013 10:51AM UTC by anonymous comment:34

so what is the solution then?

Changed September 05, 2013 12:44PM UTC by dmethvin comment:35

Per http://bugs.jquery.com/ticket/12790#comment:26, remove or disable add-ons such as Free Download Manager that are interfering with the browser.

Changed October 04, 2013 03:30PM UTC by sean pu comment:36

I got this bug too, i will try all way that shared above.

Thank you all.

Changed November 01, 2013 09:25PM UTC by anonymous comment:37

Just an FYI - I had a similar issue with IE 10 with http request whether with JQuery and just javascript code. The issue was actually caused by Google Gears. After disabling, the issue went away.