Hey, Sorry to bug you on a Saturday, but I am having some real performance issues with prototype's AJAX in IE 6. The request will intermittently drop the response text but return a valid status of 200. To eliminate the possibility of errant requests I have the test call the same query repeatedly. Out of 15 requests made an average of 4 will return empty. This has nothing to do with the number of clicks or the speed in which they are made (something I've tested extensively). Sometimes it can be the first or the last 5 requests there doesn’t seem to be any pattern to it. I've had upwards of 15 requests in a row return this way. To make sure the request isn’t cached I've added a timestamp to the parameters so it will always have something new (I've heard mention about IE caching requests) MySQL 5.1 backend with PHP 5 returns a JSON formatted block of text. Using the latest prototype.js (1.6.0.2) on IE 6.0.3790.3959 http://clients.morgangraphics.com/personal/prototype/index.php shows the test and is broken down into its most simple parts. If you click the countries several times you will eventually run across a few of these, often in groups. QUERY = far.get_results(38); RESPONSE RESPONSE Status= 200 RESPONSE RESPONSE TEXT= This isn’t an issue in Firefox, only IE. I've tried every iteration of requests, invoking event listeners etc. I can’t seem to track this one down. Any help would be greatly appreciated.
on 10.05.2008 23:51
on 12.05.2008 17:57
I've spent two days trying to track down the issue with IE 6 randomly dropping the response after a valid request. It would consistently return a 200 status code with an empty responseText. Even commenting out the JSON object and placing plain text string in its place it would randomly fail, not finding a pattern was the most frustrating. I even went as far as comparing Msxml2.dll versions in hopes it would reveal something. I wish I could tell you what the deal is; however there seems to be a real bug with IE 6 using POST. I mean it is completely random in its functioning/non-function manner. Changing the request to GET seems to have solved the immediate issue; I find it incredibly strange that the POST fails randomly in IE 6 only. Anyway, I’ve added another test that shows the difference between POST/GET. POST http://clients.morgangraphics.com/personal/prototype/index.php GET http://clients.morgangraphics.com/personal/prototype/index2.php