• 2.封装简单的Ajax


    <script>
            //简单的封装一个ajax
            /**
             * ajax: async javascript and json
             *  主要用来实现前后端的数据交流
             * A要发送一个信息给B
             *  请求当中需要有的基本信息
             *      1.B的地址
             *      2.请求方式
             *      3.请求数据
             *      4.状态码(B是否正常接收数据)
             *      5.响应数据
             *  XMLHttpRequest对象
             * 五层网络模型:
             *  物理层
             *  数据链路层
             *  网络层
             *  传输层
             *  应用层
             */
            function ajax(options){
                var xhr = null;
                if(window.XMLHttpRequest){
                    xhr = new XMLHttpRequest();
                }else{//兼容IE6
                    xhr = new ActiveXObject('Microsoft.XMLHTTP');
                }
                
                xhr.onreadystatechange = function(){//监听响应事件
                    //readyState的几个值
                    //0:当前代理已经被创建,还没有调用open方法
                    //1:调用了open方法,建议连接
                    //2:send方法已经被调用
                    //3:代表正在接收相应信息
                    //4:代表响应数据全部发送完成
                    //status的几个值
                    //200:正常响应
                    if(xhr.readyState == 4 && ){
                        if(xhr.status == 200){
                            options.success(JSON.parse(xhr.responseText));
                        }else{
                            console.log('error');
                        } 
                    }
                }
    
                if(options.type == 'GET'){
                    xhr.open(options.type, options.url + '?' + options.data, options.flag);
                    xhr.send();
                }else if(options.type == 'POST'){
                    xhr.open(options.type, options.url, options.flag);
                    xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');//请求头的编码类型:key=value&key1=value1
                    xhr.send(options.data);
                }
            } 
        </script>
    Ajax.js
  • 相关阅读:
    一个文件汇集搜索系统(NiFi + ELK)
    Apache NiFi
    JSONPath
    git免密push方法
    SSH的那些keys
    Elasticsearch
    kubernetes intro
    几个流行的npm包
    Micro-Frontend微前端
    Consul服务注册与服务发现
  • 原文地址:https://www.cnblogs.com/lanshanxiao/p/12902892.html
Copyright © 2020-2023  润新知