jquery – $.ajax函数的成功处理程序,具有非标准http状态代码

前端之家收集整理的这篇文章主要介绍了jquery – $.ajax函数的成功处理程序,具有非标准http状态代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我们编写了一个RESTful服务器API.无论什么原因,我们做出了DELETE的决定,我们希望返回一个204(无内容)状态代码,空白的响应.我试图从jQuery调用这个,传递一个成功的处理程序并将动词设置为DELETE:
jQuery.ajax({
    type:'DELETE',url: url,success: callback,});

服务器返回204,但是成功处理程序从不被调用.有没有办法配置jQuery以允许204s触发成功处理程序?

解决方法

204应该被视为成功.你使用什么版本的jQuery?我做了几个测试,所有200个范围状态代码都到成功处理程序. jQuery 1.4.2的来源证实:
// Determines if an XMLHttpRequest was successful or not
httpSuccess: function( xhr ) {
    try {
        // IE error sometimes returns 1223 when 
        // it should be 204 so treat it as success,see #1450
        return !xhr.status && location.protocol === "file:" ||
            // Opera returns 0 when status is 304
            ( xhr.status >= 200 && xhr.status < 300 ) ||
            xhr.status === 304 || xhr.status === 1223 || xhr.status === 0;
    } catch(e) {}

    return false;
},
原文链接:https://www.f2er.com/jquery/176254.html

猜你在找的jQuery相关文章