原生 ajax

get请求

function ajaxRequest (url) {
    let xhr ;
	if (window.XMLHttpRequest)
	{
		//  IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
		xhr=new XMLHttpRequest();
	}
	else
	{
		// IE6, IE5 浏览器执行代码
		xhr=new ActiveXObject("Microsoft.XMLHTTP");
	}
    xhr.open("GET", url, true);
    xhr.send();

    xhr.onreadystatechange = function(){
        if (xhr.readyState === 4 && xhr.status === 200) {
           console.log(xhr.responseText)
        }
    }
}

post

  function ajax(url) {
        let xhr;
        if (window.XMLHttpRequest) {
            //  IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
            xhr = new XMLHttpRequest();
        } else {
            // IE6, IE5 浏览器执行代码
            xhr = new ActiveXObject("Microsoft.XMLHTTP");
        }
        xhr.open("DELETE", url, false); //这里用了DELETE, 和post原理一样
        xhr.setRequestHeader("X-CSRF-TOKEN",$('meta[name="csrf-token"]').attr('content'));
        xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
        xhr.send();

        if (xhr.readyState === 4 && xhr.status === 200) {
            return true;
        };
        return false;
        console.log(xhr.responseText)
    }

blob

  function ajax(url) {
            let xhr;
            if (window.XMLHttpRequest) {
                //  IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
                xhr = new XMLHttpRequest();
            } else {
                // IE6, IE5 浏览器执行代码
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xhr.open("POST", url/*url地址*/, true);
            xhr.setRequestHeader("X-CSRF-TOKEN",$('meta[name="csrf-token"]').attr('content'));
            xhr.responseType = "blob";
            xhr.onload = function () {
                if (this.status === 200 ) {
                    var blob = this.response;
                    var reader = new FileReader();
                    reader.readAsDataURL(blob);
                    reader.onload = function(ev) {//读入完成事件
                        var a = document.createElement("a");
                        a.href = ev.target.result;//读取结果
                        a.download = "挂牌.zip";
                        document.body.appendChild(a);
                        a.click();
                        a.remove();
                    }
                }
            }
            xhr.send();

        }

   function ajax(url) {
            let xhr;
            if (window.XMLHttpRequest) {
                //  IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
                xhr = new XMLHttpRequest();
            } else {
                // IE6, IE5 浏览器执行代码
                xhr = new ActiveXObject("Microsoft.XMLHTTP");
            }
            xhr.open("POST", url/*url地址*/, true);
            xhr.setRequestHeader("X-CSRF-TOKEN",$('meta[name="csrf-token"]').attr('content')); //不加这个不能连接laravel
            xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded"); //不加这个不能传递数据
            xhr.responseType = "blob";
            xhr.onload = function () {
                if (this.status === 200 ) {
                    var blob = this.response;
                    var reader = new FileReader();
                    reader.readAsDataURL(blob);
                    reader.onload = function(ev) {//读入完成事件
                        var a = document.createElement("a");
                        a.href = ev.target.result;//读取结果
                        a.download = "挂牌.zip";
                        document.body.appendChild(a);
                        a.click();
                        a.remove();
                    }
                }
            }
            let id = [1,3,5];
            let ads = ['ad','asd','asdf'];
            xhr.send("id="+id.toString() + "&ads=" + ads.toString()); //必须转换为url参数模式

        };
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值