jquery xhr 成功和错误状态

发布于 2024-11-18 12:21:53 字数 122 浏览 1 评论 0原文

jquery 接受作为成功状态的所有 xhr 状态是什么?同样,错误状态是什么?我知道200是成功状态,401是错误状态。有关此的任何进一步信息可能会有所帮助。有人可以指点我读一本好书吗?我无法从 jquery api 获取信息。

What are all the xhr states that jquery accepts as success states? Similarly what are the error states? I know 200 is a success state and 401 is an error state. Any further information on this could be helpful. Can someone please point me to a good read. I could not get the information from jquery api.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

因为看清所以看轻 2024-11-25 12:21:53

当我在文档中找不到答案时,我会深入研究来源。这是您要查找的部分,特别是第 2 行:

// If successful, handle type chaining
if ( status >= 200 && status < 300 || status === 304 ) {

    // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
    if ( s.ifModified ) {

        if ( ( lastModified = jqXHR.getResponseHeader( "Last-Modified" ) ) ) {
            jQuery.lastModified[ ifModifiedKey ] = lastModified;
        }
        if ( ( etag = jqXHR.getResponseHeader( "Etag" ) ) ) {
            jQuery.etag[ ifModifiedKey ] = etag;
        }
    }

    // If not modified
    if ( status === 304 ) {

        statusText = "notmodified";
        isSuccess = true;

    // If we have data
    } else {

        try {
            success = ajaxConvert( s, response );
            statusText = "success";
            isSuccess = true;
        } catch(e) {
            // We have a parsererror
            statusText = "parsererror";
            error = e;
        }
    }
} else {
    // We extract error from statusText
    // then normalize statusText and status for non-aborts
    error = statusText;
    if( !statusText || status ) {
        statusText = "error";
        if ( status < 0 ) {
            status = 0;
        }
    }
}

When I can't find an answer in the docs, I dive into the source. Here's the bit you're looking for, specifically line 2:

// If successful, handle type chaining
if ( status >= 200 && status < 300 || status === 304 ) {

    // Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.
    if ( s.ifModified ) {

        if ( ( lastModified = jqXHR.getResponseHeader( "Last-Modified" ) ) ) {
            jQuery.lastModified[ ifModifiedKey ] = lastModified;
        }
        if ( ( etag = jqXHR.getResponseHeader( "Etag" ) ) ) {
            jQuery.etag[ ifModifiedKey ] = etag;
        }
    }

    // If not modified
    if ( status === 304 ) {

        statusText = "notmodified";
        isSuccess = true;

    // If we have data
    } else {

        try {
            success = ajaxConvert( s, response );
            statusText = "success";
            isSuccess = true;
        } catch(e) {
            // We have a parsererror
            statusText = "parsererror";
            error = e;
        }
    }
} else {
    // We extract error from statusText
    // then normalize statusText and status for non-aborts
    error = statusText;
    if( !statusText || status ) {
        statusText = "error";
        if ( status < 0 ) {
            status = 0;
        }
    }
}
你对谁都笑 2024-11-25 12:21:53

我刚刚用谷歌搜索,

怎么样

这个http://www.w3.org/TR/XMLHttpRequest/

I just googled,

how about this

http://www.w3.org/TR/XMLHttpRequest/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文