Just added support for Accept headers in Ajax requests - defaults to the correct...
authorJohn Resig <jeresig@gmail.com>
Mon, 14 Jan 2008 18:19:28 +0000 (18:19 +0000)
committerJohn Resig <jeresig@gmail.com>
Mon, 14 Jan 2008 18:19:28 +0000 (18:19 +0000)
src/ajax.js

index 58c6b9b..8bf4a50 100644 (file)
@@ -146,7 +146,15 @@ jQuery.extend({
                async: true,
                data: null,
                username: null,
-               password: null
+               password: null,
+               accepts: {
+                       xml: "application/xml, text/xml",
+                       html: "text/html",
+                       script: "text/javascript, application/javascript",
+                       json: "application/json, text/javascript",
+                       text: "text/plain",
+                       default: "*/*"
+               }
        },
        
        // Last-Modified header cache for next request
@@ -275,6 +283,11 @@ jQuery.extend({
 
                        // Set header so the called script knows that it's an XMLHttpRequest
                        xml.setRequestHeader("X-Requested-With", "XMLHttpRequest");
+
+                       // Set the Accepts header for the server, depending on the dataType
+                       xml.setRequestHeader("Accept", s.dataType && s.accepts[ s.dataType ] ?
+                               s.accepts[ s.dataType ] + ", */*" :
+                               s.accepts.default );
                } catch(e){}
 
                // Allow custom headers/mimetypes