Hi,

I'm just working on a project which is making ajax calls to a .NET backend using the AjaxPro extension. However, since I'm already using jQuery on the front end I thought I'd avoid using their extra frontend code and just use jQuery.

The problem is that their .NET backend expects a custom header ('X-AjaxPro-Method' with the name of the server side method you want to call) which jQuery doesn't seem to support natively.

So I made the attached little patch (against jquery-1.0.3.js [Rev: 501]) which just allows you to pass extra headers to the ajax call. It seems to be working for me - please consider it for inclusion into jQuery,

Cheers,

Kelvin :)
Index: jquery-1.0.3.js
===================================================================
--- jquery-1.0.3.js     (revision 21)
+++ jquery-1.0.3.js     (working copy)
@@ -1762,7 +1762,7 @@
 
        // Last-Modified header cache for next request
        lastModified: {},
-       ajax: function( type, url, data, ret, ifModified ) {
+       ajax: function( type, url, data, ret, ifModified, headers ) {
                // If only a single argument was passed in,
                // assume that it is a object of key/value pairs
                var global = true;
@@ -1777,6 +1777,7 @@
                        ifModified = type.ifModified || false;
                        data = type.data;
                        url = type.url;
+                       headers = type.headers;
                        type = type.type;
                }
                
@@ -1804,6 +1805,12 @@
                // Set header so the called script knows that it's an 
XMLHttpRequest
                xml.setRequestHeader("X-Requested-With", "XMLHttpRequest");
        
+               if (headers) {
+                       for (header in headers) {
+                               xml.setRequestHeader(header, headers[header]);
+                       }
+               }
+       
                // Make sure the browser sends the right content length
                if ( xml.overrideMimeType )
                        xml.setRequestHeader("Connection", "close");
_______________________________________________
jQuery mailing list
discuss@jquery.com
http://jquery.com/discuss/

Reply via email to