По умолчанию все, что передается как данные, не являющиеся строкой, обрабатывается и преобразуется в строку запроса. Итак, если вы используете POST, чтобы пропустить ошибку:
$.post({
url: "http://yourserver/ajax" ,
data: {param1: 'val1', param2:'val2'}
});
в $.ajaxSend
значение settings.data
будет 'param1=val1¶m2=val2'
, и вам нужно будет проанализировать параметры, как в GET.
Если вы хотите избежать анализа URL или данных, просто добавьте копию данных при построении объекта настроек. Дополнительный параметр не должен вызывать никаких проблем.
var data = {param1: 'val1', param2:'val2'};
$.get({
url: "http://yourserver/ajax" ,
data: data,
dataCopy: data
});
Затем в $.ajaxSend
вы можете проверить значения в settings.dataCopy
.