Commit Graph

180 Commits (master)

Author SHA1 Message Date
jaubourg a28eadff48 Makes sure no unload handler is bound when not in IE. Also simplifies the whole "on unload abort" code. Also avoids the declaration of yet another variables in the jQuery main closure for the temporary XHR used to assess support properties. 2011-04-21 18:43:40 +02:00
jaubourg 3a3842c669 (Re) Fixes #8884 in a way that keeps the format of the headers map sent to transports natural. 2011-04-19 00:29:20 -07:00
jaubourg a519129e99 Removes now unnecessary regexp and companion function. Fixes some spacing issues. Shortens field names. 2011-04-15 14:16:43 -07:00
Sam Bisbee a9a79ccc6e Continuing to map request headers using their name in uppercase for the index, but we now map to an object with an unmodified name and value: { name: "", value: "" }. This prevents overwriting of the user's supplied headers, which many applications parse with case sensitivity, because we no longer use the modified, uppercase index when building the request. 2011-04-15 16:36:43 -04:00
jaubourg 4ad9b44dea Ensures callback placeholders are tested for and eventually replaced in data only when contentType is application/x-www-form-urlencoded and data is a string. Removes json to jsonp promotion when jsonp or jsonpCallback options are present. Uses new Deferred.always method to bind cleanUp function. 2011-04-13 19:27:19 +02:00
jaubourg 2594a935de Applies exception in Style Guidelines regarding objects and functions when they are the last argument of a function call. 2011-04-08 17:41:14 +02:00
jaubourg 2ed81b44be Fixes #8744. Makes sure script transport abort method actually removes the script tag even if readyState exists. 2011-04-04 17:41:30 +02:00
jaubourg 6c124d3dd4 Fixes #8423. Never set X-Requested-With header automagically for cross-domain requests. 2011-03-07 00:42:09 +01:00
jaubourg 58faec7cb7 Removes unnecessary parenthesis from regular expression. 2011-02-24 06:37:37 +01:00
jaubourg ea3e10a492 Minor changes to enforce JQuery Core Style Guidelines. 2011-02-12 00:14:11 +01:00
jaubourg 066304edf0 Adds missing crossDomain test. 2011-02-11 07:39:46 +01:00
jaubourg f2e0ae1a39 Fixes #8245. Ajax now ensures header names are capitalized so that non-compliant xhr implementations don't override them. 2011-02-11 07:07:06 +01:00
jaubourg 3a1d7a3c7c Simplifies status normalization in xhr transport. Local file test modified for clarity. 2011-02-11 07:02:11 +01:00
jaubourg 6f4b36ed17 Replaces jQuery.each loop for headers with a foreach loop. 2011-02-09 17:50:45 +01:00
jaubourg f6e173437e Fixes #8219. Introduces the mimeType option to override content-type header in conversion (and in native xhr when possible). Adds companion overrideMimeType method on jqXHR object (it simply sets the option). Unit test added. 2011-02-09 17:47:33 +01:00
jaubourg 0c21c83e96 Makes sure xhrs are actually aborted on unload in IE. Simplifies active xhrs caching in the process. 2011-02-07 06:11:52 +01:00
jaubourg d6fbbe1080 Fixes #8177. XHR transport now considers 304 Not Modified responses as 200 OK if no conditional request header was provided (as per the XMLHttpRequest specification). 2011-02-05 03:08:35 +01:00
jaubourg 4d808a3345 Don't use a local copy of jQuery.ajaxSettings.isLocal anymore but use the current value so that it is possible to set isLocal to true for protocols unknown to jQuery. 2011-02-03 18:22:37 +01:00
jaubourg ee22a59129 Stores jQuery.ajaxSettings.isLocal locally at load time so that any change to it won't affect the transport. Fixes the url parsing regexp to deal with empty domains. Adds informative text into test/localfile.html and handles Opera's failure. Revises the way xhr are created by doing all tests at load time and normalizes all the xhr creation functions so that none of them may throw an exception. 2011-02-03 06:12:47 +01:00
jaubourg 823eecab90 Fixes #8146. Custom fields in xhrFields are now set after the XMLHttpRequest object has been opened. 2011-02-03 03:02:11 +01:00
jaubourg d77a2a2274 Fixes #8152 by applying the same special cases for protocol "chrome-extension:" as were for "file:" (needs tests). Re-organizes and fixes the handling of special cases for HTTP status code in the xhr transport. Also re-organizes the handling of document.location in ajax.js. 2011-02-03 02:53:10 +01:00
jaubourg 5ef7ddc4c5 Fixes #8146 by introducing the xhrFields option with is a map of fieldName/fieldValue to set on the native xhr. Can be used to set withCredentials to true for cross-domain requests if needed. 2011-02-02 21:16:26 +01:00
jaubourg b90369e8cb Fixes #8135. Makes sure any exception thrown by Firefox when trying to access an XMLHttpRequest property when a network error occured is caught and notified as an error. Added test/networkerror.html to test the behavior. 2011-02-02 13:33:31 +01:00
Mathias Bynens 462bb1f66a Fixes #8098. Use the fast document.head when available. Don't set unneeded "script.type = text/javascript". 2011-02-02 00:59:00 +01:00
jaubourg cb85da7b62 Fixes #8125. Status is set to 200 for requests with status 0 when location.protocol if "file:". Added test/localfile.html to control it works. 2011-02-01 17:22:01 +01:00
jaubourg cb49b4a1b6 Fixes #8115. Renames all references to jXHR with jqXHR in the code (like was done in the doc). 2011-02-01 16:00:53 +01:00
jaubourg e0b1bb8e3d Script dataType now supports ecmascript mimetypes. 2011-01-31 19:14:06 +01:00
jaubourg f286a716d5 Makes sure jsonp callback is not left in the global namespace in case of an early abort (beforeSend). Unit test added. 2011-01-31 18:53:44 +01:00
jaubourg 85a195c6d5 Fixes #8082. Text to script converter now returns text. Unit test added. 2011-01-29 01:39:22 +01:00
jaubourg b9f2131a9d Fixes potential collisions between jsonp requests from different jQuery instances by prefixing the jsonp callback name with the jQuery expando rather than with "jsonp". 2011-01-29 01:25:27 +01:00
jaubourg 325dcdc2ab Fixes #8054 by reverting feature enhancement 5812 (4920). Regexps no longer searches for %3F in url or data to find jsonp callback placeholders. 2011-01-26 00:55:39 +01:00
jaubourg 5ca8f0617f Reworks how values of parameters passed to error callbacks are determined. Fixes #8050. 2011-01-25 16:08:19 +01:00
jaubourg ee22c8b34b More code style fixes. 2011-01-23 20:46:09 +01:00
jaubourg dd5bf42122 Apply JQuery Core Style Guidelines to ajax.js and ajax/*.js, 2011-01-23 05:51:41 +01:00
jaubourg 3dbd600e19 Moves determineResponse logic into main ajax callback. Puts responseXXX fields definitions into ajaxSettings. 2011-01-20 19:40:51 +01:00
jaubourg 8ad2b31ff6 Removes misleading comment. 2011-01-20 18:50:47 +01:00
jaubourg ef86694ada Renames determineDataType as determineResponse. Makes it more generic as a first step into integrating the logic into the main ajax done callback. Also fixes some comments in ajax/xhr.js. 2011-01-20 17:38:21 +01:00
jaubourg 64e1cdbb95 Cleans up and simplifies code shared by ajaxPrefilter and ajaxTransport. Removes chainability of ajaxSetup, ajaxPrefilter and ajaxTransport. Also makes sure context is handled properly by ajaxSetup (unit test added). 2011-01-20 04:12:15 +01:00
jaubourg 1cecfa1ece Moves determineDataType into ajaxSettings so that it is accessible to transports without the need for a second argument and so that we can now pass the original options to the transport instead. Also ensures the original options are actually propagated to prefilters (they were not). 2011-01-19 18:16:29 +01:00
jaubourg 92c3d87a9c Moved ajaxSettings.xhr definition together with support.ajax and support.cors determination into ajax/xhr.js. 2011-01-19 16:55:26 +01:00
jaubourg 158fa822de Setting the jsonp option to false now inhibits any url manipulation regarding the callback. 2011-01-16 05:26:46 +01:00
jaubourg f74b844989 The script prefilter now forces cross-domain requests type to GET. 2011-01-16 05:25:45 +01:00
jaubourg 8ab23aec2c Fixes #2994. Not finding a transport now fires the error callbacks and doesn't make ajax return false. Had to revise how jsonp and script prefilters & transports work (better separation of concerns). Also took the opportunity to revise jXHR getRequestHeader and abort methods and enabled early transport garbage collection when the request completes. 2011-01-16 02:57:39 +01:00
jaubourg a8fa5f2ec1 Moved jQuery.ajax.prefilter and jQuery.ajax.transport to jQuery.ajaxPrefilter and jQuery.ajaxTransport so that proxying the ajax method doesn't turn into a nightmare. Thanks go to scott_gonzalez and DaveMethvin for pointing out the issue. Also made ajaxSetup return "this" to enable chainable definitions -- jQuery.ajaxSetup(...).ajaxPrefilter(...).ajaxTransport(...). 2011-01-13 18:33:24 +01:00
jaubourg 57956152d8 Removed xhr pooling since failing cross-domain requests leaves the xhr object in an undefined state in Firefox. Also rewrote comments related to the active xhr list so that they make sense. 2011-01-13 16:58:16 +01:00
jaubourg 667a3b31e6 Reworked script and xhr abort logic to take advantage of the fact jXHR.abort will complete the request itself if not done already. 2011-01-13 02:05:39 +01:00
jaubourg e221d39e98 Script transport now uses ajaxSetup to define script dataType. 2011-01-12 18:54:15 +01:00
jaubourg 0c51e9d55f Fixes #4897. Added ?? as a context-insensitive placeholder for the callback name of a JSONP request. Unit tests provided. 2011-01-12 18:36:00 +01:00
jaubourg 1d1d4fe112 Moved unload abort code so that the event is only bound if the xhr transport is used. Fixes #5280. 2011-01-09 22:20:58 +01:00
jaubourg 8c8bd3bf6a Fixes #5812. =? will be detected even when it has been escaped during data serialization. 2011-01-09 21:48:52 +01:00