10 javascript ajax jquery post
我必须使用Authorization标头将XML发送到服务器,它必须是POST.
现在我有两个选择.
当我使用dataType ='jsonp'时,它总是变为GET而不是POST.我的数据也必须是XML.
var request = {};
request.type = 'POST';
request.contentType = 'application/jsonp; charset=utf-8';
request.dataType = 'jsonp';
request.data = JSON.stringify(this.data);
request.url = this.url;
request.beforeSend = function (xhr) {
xhr.setRequestHeader("Authorization", "Basic ");
};
request.processData = false;
$.ajax(request);
Run Code Online (Sandbox Code Playgroud)但是没有dataType ='jsonp'我根本就没有Authentication头.以下代码仅适用于Chrome.
var request = {};
request.type = 'POST';
request.contentType = 'text/xml';
request.dataType = 'xml';
request.data = this.data;
request.url = this.url;
request.beforeSend = function (xhr) {
xhr.setRequestHeader("Authorization", "Basic ");
};
request.processData = false;
$.ajax(request);
Run Code Online (Sandbox Code Playgroud)是的,我知道StackOverflow上有很多类似的问题,我已经读了很多,但仍然没有找到正确的答案.
viv*_*shi 13
修改beforeSend方法中的标头,例如:
$.ajax({
url: url,
method: "POST",
dataType: "json",
crossDomain: true,
contentType: "application/json; charset=utf-8",
data: JSON.stringify(data),
cache: false,
beforeSend: function (xhr) {
/* Authorization header */
xhr.setRequestHeader("Authorization", "Basic " + Utils.getUsernamePassword());
xhr.setRequestHeader("X-Mobile", "false");
},
success: function (data) {
},
error: function (jqXHR, textStatus, errorThrown) {
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
43301 次 |
| 最近记录: |