转自网络 1 $.ajax({
type: "POST",
url: "http://192.168.0.88/action.cgi?ActionID=WEB_RequestCertificateAPI",
data: {
"user": "api",
"password": "api"
},
dataType: "json",
ContentType: "application/json",
beforeSend: function (XMLHttpRequest) {
//HttpUtility.UrlEncode
var sessionid = "SessionID";
XMLHttpRequest.setRequestHeader(sessionid, sid);
},
success: function (SessionID) {
//alert(SessionID.success);
var dt = eval("(" + SessionID.data + ")");
if (SessionID.success == 1) {
alert("success");
}
else {
alert(‘errorId:‘ + SessionID.error.id);
alert(‘errorCode:‘ + SessionID.error.code);
alert(‘errorPara:‘ + SessionID.error.params);
}
}
});因为种种原因,自己的框架中要传系统约定好的header信息,页面使用的jquery的ajax请求,找了好久,突然发现我们可以在beforeSend方法中设置,这个方法接受一个参数,就代表了发起异步请求的XMLHttpRequest对象,我们可以用该对象的setRequestHeader方法实现我们的目的,比如,我在header中加一个自定义的dataType头信息:beforeSend: function(XMLHttpRequest) { XMLHttpRequest.setRequestHeader("dataType","abc"); $(".return_confrim").html("<img src=‘jquery/images/loading.gif‘/> 正在验证账户...");},这样,我们在服务器端可以得到自定义中的dataType信息。