From: John Resig Date: Sat, 5 Dec 2009 02:20:58 +0000 (-0500) Subject: Allow the user to explicitly set a content-type header even when there's no data... X-Git-Tag: 1.4a2~108 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=25b0ba9f9612583033b902a0e40345463a3a71d0;p=jquery.git Allow the user to explicitly set a content-type header even when there's no data being sent to the server. Fixes #1900. --- diff --git a/src/ajax.js b/src/ajax.js index 59c231c9b..94426085e 100644 --- a/src/ajax.js +++ b/src/ajax.js @@ -195,10 +195,8 @@ jQuery.extend({ lastModified: {}, etag: {}, - ajax: function( s ) { - // Extend the settings, but re-extend 's' so that it can be - // checked again later (in the test suite, specifically) - s = jQuery.extend(true, {}, jQuery.ajaxSettings, s); + ajax: function( origSettings ) { + var s = jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings); var jsonp, status, data, callbackContext = s.context || window, @@ -333,7 +331,7 @@ jQuery.extend({ // Need an extra try/catch for cross domain requests in Firefox 3 try { // Set the correct header, if data is being sent - if ( s.data ) { + if ( s.data || origSettings.contentType ) { xhr.setRequestHeader("Content-Type", s.contentType); }