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 comment:1
Changed October 26, 2012 01:20PM UTC by 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 comment:3
I'd gladly look with a jsfiddle demonstrating the issue :)
Changed October 30, 2012 10:44PM UTC by comment:4
owner: | → Tigroo |
---|---|
status: | new → pending |
@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 comment:5
Hi
i have the same issue, please see
http://stackoverflow.com/questions/13101729/jquery-ajax-call-works-in-all-browser-except-ie-10
Changed November 01, 2012 09:37PM UTC by comment:6
same issue here. :/
Changed November 02, 2012 03:39PM UTC by 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 comment:8
Any update on this issue?
Do you need any further information?
Changed November 06, 2012 09:08AM UTC by comment:9
As said above, a jsfiddle, or jsbin, demonstrating the issue.
Changed November 06, 2012 11:01AM UTC by comment:10
you have to be using ie10 on windows 8 for it not to work
Changed November 06, 2012 01:28PM UTC by comment:11
resolution: | → worksforme |
---|---|
status: | pending → closed |
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 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 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 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 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 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 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 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 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 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 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 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 comment:23
#12925 is a duplicate of this ticket.
Changed November 20, 2012 09:45PM UTC by 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 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 comment:26
resolution: | worksforme |
---|---|
status: | closed → reopened |
Changed November 26, 2012 09:48PM UTC by comment:27
resolution: | → cantfix |
---|---|
status: | reopened → closed |
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:
Changed March 29, 2013 08:59AM UTC by 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 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 comment:30
in<head></head>
里添加
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" >
Changed August 05, 2013 12:51AM UTC by comment:31
This will work on compatibility mode of IE10.
Changed August 06, 2013 03:51PM UTC by 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 comment:33
yangzh@glodon.com
close httpwatch
Changed September 05, 2013 10:51AM UTC by comment:34
so what is the solution then?
Changed September 05, 2013 12:44PM UTC by 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 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 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.
More precisions : It seems like all data arguments are not passing. If switch the compatibility mode from IE10 to IE9, it works.