简单封装js原生ajax请求

        function showList(data) {
            console.log(data)
        }
        var xhr = null;
        ajaxFunc('post', './data.php', 'username=liao', true, showList)

        function ajaxFunc(method, url, data, flag, callback) {
            // 兼容处理
            if (window.XMLHttpRequest) {
                xhr = new XMLHttpRequest();
            } else {
                xhr = new ActiveXObject('Microsoft.XMLHttp');
            }
            method = method.toUpperCase();
            xhr.open(method, url, flag); // method  url 同步异步
            if (method == 'POST') {
                xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); // post请求必须设置头部
            }
            xhr.onreadystatechange = function () {
                if (xhr.readyState == 4) {
                    if (xhr.status == 200) {
                        callback(xhr.responseText)
                    }
                }
            }
            xhr.send(data);
        }

详细描述

属性描述
XMLHttpRequest所有现代浏览器均支持 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveXObject)
open(method,url,async)规定请求类型,url,是否同步异步
1.method:请求的类型,GET 或 POST
2.url:文件在服务器上的位置
3.async:true(异步)或 false(同步)
send(string)将请求发送到服务器,string仅用于post请求
setRequestHeader(header,value)向请求添加 HTTP 头。header: 规定头的名称。value: 规定头的值
onreadystatechange状态改变的时间触发器
readyState对象状态(integer),状态值
0 = 未初始化,未调用send()方法
1 = 读取中,已调用send()方法,正在发送请求
2 = 已读取,send()方法已完成,接受到全部响应内容
3 = 交互中,正在解析响应内容
4 = 完成,响应内容全部完成
responseText获得字符串形式的响应数据
responseXMl获得XML形式的相应数据
status服务器返回的状态码,如:404 = 文件没找到,200 = 成功,500 = 服务器内部错误,304 = 资源被修改
statusText服务器返回的状态文本信息
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值