IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

手动实现AJAX

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

AJAX

每日更新前端基础,如果觉得不错,点个star吧
https://github.com/WindrunnerMax/EveryDay

AJAX在浏览器是通过XMLHttpRequest对象来实现数据传输的

XMLHttpRequest对象进行HTTP请求前必须通过open初始化,open接受五个参数,分别为请求方法、请求链接、异步标识、账号和密码用以服务端验证

open(Method, URL, Asynchronous, UserName, Password)

在成功初始化请求之后,XMLHttpRequest对象的setRequestHeader方法可以用来设置请求头

setRequestHeader(key,value)

调用open()方法后,就可以通过调用send()方法按照open方法设定的参数将请求进行发送

send(Data)

open方法设定发送的方式为异步请求时,onreadystatechange事件监听器将自动在XMLHttpRequest对象的readyState属性改变时被触发

switch(readyState){
    case 1: break; //当open方法被成功调用,readyState为1
    case 2: break; //当send方法被调用,readyState属性被置为2
    case 3: break; //HTTP响应内容开始加载,readyState属性被置为3
    case 4: break; //HTTP响应内容结束加载,readyState属性被置为4
}

如果XMLHttpRequest对象的readyState属性还没有变成4,abort可以终止请求。这个方法可以确保异步请求中的回调不被执行。

abort()

ajax的简单实现

由于浏览器的同源策略(协议 url 端口号 任一不同都算为跨域请求),于是此代码需要打开百度的首页,在开发者工具的Console直接执行,在Network查看效果

    function ajax(url,method="GET",data=null,async=true) {
        // 声明XMLHttpRequest //在IE5和IE6中需要使用ActiveX对象
        var XHR = XMLHttpRequest;
        // 创建XMLHttqRequest
        XHR = new XMLHttpRequest()
        // 设置请求状态改变时执行的函数
        XHR.onreadystatechange = function() {
            if (XHR.readyState == 4 ) console.log(`响应状态:${XHR.status}`,"FINISH") //XHR.responseText为响应体
         }
         // 初始化请求参数
         XHR.open(method,url,async)
         // 发起请求
         XHR.send(data)
    }

    ajax("https://www.baidu.com");
    ajax("https://www.baidu.com","POST","A=1&B=2");

文章永久链接:https://tech.souyunku.com/?p=39568


Warning: A non-numeric value encountered in /data/wangzhan/tech.souyunku.com.wp/wp-content/themes/dux/functions-theme.php on line 1154
赞(85) 打赏



未经允许不得转载:搜云库技术团队 » 手动实现AJAX

IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码
IDEA2023.1.3破解,IDEA破解,IDEA 2023.1破解,最新IDEA激活码

评论 抢沙发

大前端WP主题 更专业 更方便

联系我们联系我们

觉得文章有用就打赏一下文章作者

微信扫一扫打赏

微信扫一扫打赏


Fatal error: Uncaught Exception: Cache directory not writable. Comet Cache needs this directory please: `/data/wangzhan/tech.souyunku.com.wp/wp-content/cache/comet-cache/cache/https/tech-souyunku-com/index.q`. Set permissions to `755` or higher; `777` might be needed in some cases. in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php:367 Stack trace: #0 [internal function]: WebSharks\CometCache\Classes\AdvancedCache->outputBufferCallbackHandler() #1 /data/wangzhan/tech.souyunku.com.wp/wp-includes/functions.php(5109): ob_end_flush() #2 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(303): wp_ob_end_flush_all() #3 /data/wangzhan/tech.souyunku.com.wp/wp-includes/class-wp-hook.php(327): WP_Hook->apply_filters() #4 /data/wangzhan/tech.souyunku.com.wp/wp-includes/plugin.php(470): WP_Hook->do_action() #5 /data/wangzhan/tech.souyunku.com.wp/wp-includes/load.php(1097): do_action() #6 [internal function]: shutdown_action_hook() #7 {main} thrown in /data/wangzhan/tech.souyunku.com.wp/wp-content/plugins/comet-cache/src/includes/traits/Ac/ObUtils.php on line 367