jQuery.ajax实现根据不同的Content-Type做出不同的响应

Posted 山涧清泉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery.ajax实现根据不同的Content-Type做出不同的响应相关的知识,希望对你有一定的参考价值。

使用H5+ASP.NET General Handler开发项目,使用ajax进行前后端的通讯。有一个场景需求是根据服务器返回的不同数据类型,前端进行不同的响应,这里记录下如何使用$.ajax实现该需求。

$.ajax({
‘url‘: ‘GetWatermarkInfo.ashx‘,
‘type‘:‘post‘,
‘data‘: { ‘bgstyle‘: bgstyle, ‘watermark‘: watermark },
success: function (data, status, xhr) {
//使用XMLHttpRequest对象的getResponseHeader方法来获取content-type信息
var ct = xhr.getResponseHeader("content-type") || "";
if (ct.indexOf(‘application/json‘) > -1) {
if (data.Status == ‘error‘) {
alert(data.Message);
}
else if (data.Status == ‘ok‘) {
$(‘#watermarkImg‘).attr(‘src‘, ‘GenerateWatermark.ashx?bgstyle=‘ + bgstyle + ‘&watermark=‘ + watermark);
}
else {
alert(‘unknown error!‘);
}
}
else {
alert(‘unexpectecd content-type!‘);
}
},
error: function (message) {
alert(‘error: ‘ + message);
}
})

以上是关于jQuery.ajax实现根据不同的Content-Type做出不同的响应的主要内容,如果未能解决你的问题,请参考以下文章

Jquery Ajax 如何实现动态加载Repeater 或者 DataList

ajax学习笔记3-jQuery实现ajax(大拇指向上)

jquery ajax实现省市二级联动

jQuery Ajax POST 更改 Firefox 中的 Content-Type

定义 Content-Type 时跨域 jQuery AJAX 失败

jquery ajax中的DataType vs ContentType [重复]