ajax请求流程以及readyState请求状态含义

<script>

    var xhr = new XMLHttpRequest()
    console.log(xhr.readyState)
    // => 0
    // 初始化 请求代理对象

    xhr.open('GET', 'time.php')
    console.log(xhr.readyState)
    // => 1
    // open 方法已经调用,建立一个与服务端特定端口的连接

    xhr.send()

    xhr.addEventListener('readystatechange', function () {
        switch (this.readyState) {
            case 2:
                // => 2
                // 已经接受到了响应报文的响应头

                // 可以拿到头
                // console.log(this.getAllResponseHeaders())
                console.log(this.getResponseHeader('server'))
                // 但是还没有拿到体
                console.log(this.responseText)
                break

            case 3:
                // => 3
                // 正在下载响应报文的响应体,有可能响应体为空,也有可能不完整
                // 在这里处理响应体不可靠
                console.log(this.responseText)
                break

            case 4:
                // => 4
                // 一切 OK (整个响应报文已经完整下载下来了)
                console.log(this.responseText)
                break
        }
    })

</script>

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值